Привет, пытаюсь указать в foreach ключ массива ['a'], но выдаёт ошибку Invalid argument supplied for foreach(), почему ведь массив есть? Код (Text): <?php $m = array('Rex' => array('Ex' => array( 'a' => array('c' => 3, 'd' => 4), 'b' => array('e' => 5, 'f' => 6), 'g' => '7' ))); foreach ($m as $key => $value) {foreach ($value['a'] as $k => $v){print_r($v);}} ?>
@Izooomrud PHP: <?php $m = ['rex' => [ 'ex' => [ 'a' => [ 'c' => 3, 'd' => 4, ], 'b' => [ 'e' => 5, 'f' => 6, ], 'g' => '7', ] ] ]; foreach ($m as $key => $value) { //находит массив rex foreach ($value as $key_2 => $value_2) { //находит массив ex foreach ($value_2['a'] as $k => $v){ //перебирает массив a print_r($v); } } } ?> --- Добавлено --- А можно так: PHP: <?php $m = ['rex' => [ 'ex' => [ 'a' => [ 'c' => 3, 'd' => 4, ], 'b' => [ 'e' => 5, 'f' => 6, ], 'g' => '7', ] ] ]; foreach ($m['rex']['ex']['a'] as $key => $value) { print_r($value); } ?>
сделай PHP: print_r($value) и увидишь в чем проблема а вобще вот PHP: $m = array('Rex' => array('Ex' => array( 'a' => array('c' => 3, 'd' => 4), 'b' => array('e' => 5, 'f' => 6), 'g' => '7' ))); foreach ($m as $key => $value){ foreach ($value['Ex']['a'] as $k => $v){ print_r($v); } } Суть в том что ты проходишь по массиву rex а не ex и поэтому у тебя ошибка.