El bucle
foreach
itera solo en arrays y objetos, de manera que si el valor del campo
subcategoria
de tu tabla contiene un elemento cuyo tipo no coincide con uno de los mencionados, entonces de nada te valdrá utilizar esa estructura repetitiva.
Así como nos muestras el código, para obtener el dato de dicho campo, te bastaría con un
$sub_categoria['subcategoria']
, aunque supongo que eso ya lo sabías, por lo que será mejor que nos expliques mejor qué buscas hacer para poder ayudarte.
Podrías comparar los campos de ambas tablas en la misma consulta usando la sintaxis
INNER JOIN
. En el enlace hay ejemplos de su uso, pero tendrás que adaptarlos según lo que necesites obtener.
Saludos