Estoy imprimiendo elementos de matriz
foreach($subcategories as $sucategory){ print_r($sucategory); echo $subcategory[2]; echo $subcategory[catid]; echo $subcategory['catid']; echo $subcategory["catid"]; echo $subcategory{"catid"}; die(); } El código anterior imprime solo el valor de print_r($subcategory) pero no refleja el valor de catid en $subcategory.
Array ( [id] => 5 [name] => 1 [catid] => 10 [status] => Y )y
echo $subcategories[0]['catid']; //prints 10 correctlyTienes un error ahí. Usas $sucategory y $subcategory, ¡diferentes nombres!
Copia/Pega esto y funcionará:
foreach($subcategories as $subcategory){ print_r($subcategory); echo $subcategory["catid"]; die(); }