Intereting Posts
Неправильный URL-адрес при выполнении запроса mysql (не следуя инструкциям по расположению заголовка php) Каков ваш оптимизатор веб-ресурсов «все-в-одном»? Как включить запросы PUT в Azure? Как объединить два массива, создав новый массив и напечатав результат? (с кодами) Файлы иногда загружаются как .PHP вместо .PDF? Кэширование данных в PHP Отношения один к одному на двух таблицах, разделяющих первичный ключ Doctrine2 – «класс» не является допустимым сущностью или отображенным суперклассом Извлечь данные из отношений Mysql_fetch_object () SQL Query (КАК: Если результатов не найдено, отобразите «сообщение»)? Swagger-PHP для создания JSON-файла для Swagger-UI как выбрать 5 последних строк из моего mysql Почему PHP не жалуется, когда я рассматриваю нулевое значение как массив? Как создать иерархическую систему управления доступом на основе ролей Как я могу безопасно обнаруживать SSL в CakePHP за обратным прокси-сервером nginx?

Как получить весь ключ в многомерном массиве в php

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; }