Как вывести имя подмассива
Есть массив с подмассивами
$massive = return [
'submassive1'=>[
'key1'=>'name1',
'key2'=>'name2',
],
'submassive2'=>[
'key1'=>'name3',
'key2'=>'name4',
],
'submassive3'=>[
'key1'=>'name5',
'key2'=>'name6',
],
];
Информация выводится через foreach ($massive as $info), и каждый ключ соответственно тоже, через $info[key1] и $info[key2]
Но также я хочу выводить и названия самих подмассивов, то есть submassive1, submassive 2 и так далее. Но я не могу понять, как это сделать
Ответы (2 шт):
Автор решения: Zahar
→ Ссылка
Это можно сделать непросредственно в самом foreach().
Где $key - название подмассива, а $info - сам подмассив.
foreach ($massive as $key => $info) {
...
}
Автор решения: aletoropov
→ Ссылка
У вас в коде требуется убрать "return" после присвоения.
$massive = [
'submassive1'=>[
'key1'=>'name1',
'key2'=>'name2',
],
'submassive2'=>[
'key1'=>'name3',
'key2'=>'name4',
],
'submassive3'=>[
'key1'=>'name5',
'key2'=>'name6',
], ];
Дальше выводим имя подмассива и ключ значение во вложенном массиве:
foreach ($massive as $key => $podmassive) {
echo '<p>' . $key . '</p>'; // выведет submassive1 и т.д.
//а дальше выводим ключ и значение во вроженном массиве
foreach ($podmassive as $k => $v) {
echo $k . ' = ' . $v . '</p>' ;
}}