Array ( [0] => Array ( [name] => A [id] => 1 [phone] => 416-23-55 [Base] => Array ( [city] => toronto ) [EBase] => Array ( [city] => North York ) [Qty] => 1 ) ( [1] => Array ( [name] => A [id] => 1 [phone] => 416-53-66 [Base] => Array ( [city] => qing ) [EBase] => Array ( [city] => chong ) [Qty] => 2 ) )
Как я могу получить все значение ключа в формате «0, имя, идентификатор, телефон, база, город, Ebase, Qty»?
Спасибо!
Попробуй это
function array_keys_multi(array $array) { $keys = array(); foreach ($array as $key => $value) { $keys[] = $key; if (is_array($value)) { $keys = array_merge($keys, array_keys_multi($value)); } } return $keys; }
Если вы не знаете, какой будет размер массива, используйте рекурсивную функцию с циклом foreach, который вызывает себя, если каждый $ val является массивом. Если вы знаете размер, то просто проведите через каждое измерение и запишите ключи от каждого.
Что-то вроде этого:
<?php function getKeysMultidimensional(array $array) { $keys = array(); foreach($array as $key => $value) { $keys[] = $key; if( is_array($value) ) { $keys = array_merge($keys, getKeysMultidimensional($value)); } } return $keys; }