Intereting Posts
MySQL – игнорировать ошибку вставки: дублировать запись базовый php-вопрос. добавление javascript на страницу .php Каков наилучший способ проверить, существует ли таблица в DynamoDB? Ток обновления для Google-api-php возвращает invalid_grant Получить полный URL-адрес в PHP для перенаправления на SSL Перемещение строки из одной таблицы в другую (список значений вставки не соответствует списку столбцов) Предупреждение: mysql_result (): предоставленный аргумент не является допустимым ресурсом результата MySQL в (…) в строке 4 Как Doctrine2 задает значения Id записывать аудио с пользователя и сохранять на сервере PHP Получить максимальную ценность из массива Как объединить массив и сохранить ключи? Как передать переменные $ _SESSION на сервер websocket? Начало работы с PHP Extension-Development Как вызвать метод grandparent без получения ошибки E_STRICT? Использовать веб-службу .Net с помощью PHP

Многомерный массив неизвестной глубины в один размерный массив и соответствующие ключи в PHP

У меня есть рекурсивная функция, выкачивающая данные, которые выглядят так

Array ( [17] => Array ( [cat_id] => 17 [cat_name] => test.example.1 [cat_parent] => 16 [cat_slug] => Test Example 1 ) [18] => Array ( [16] => Array ( [cat_id] => 16 [cat_name] => test.example.2 [cat_parent] => 15 [cat_slug] => Test Example 2 ) [17] => Array ( [15] => Array ( [cat_id] => 15 [cat_name] => test.example.3 [cat_parent] => 6 [cat_slug] => Test Example 3 ) [16] => Array ( [6] => Array ( [cat_id] => 6 [cat_name] => test.example.4 [cat_parent] => 2 [cat_slug] => Test Example 4 ) [7] => Array ( [2] => Array ( [cat_id] => 2 [cat_name] => test.example.5 [cat_parent] => 0 [cat_slug] => Test Example 5 ) ) ) ) ) ) 

Я не могу найти способ создания этого массива в одном измерении, поэтому я надеюсь, что кто-то может помочь сделать его одномерным с некоторым воспроизведением массива, сохранив соответствующие ключи.

пример.

  Array ( [17] => Array ( [cat_id] => 17 [cat_name] => test.example.1 [cat_parent] => 16 [cat_slug] => Test Example 1 ) [16] => Array ( [cat_id] => 16 [cat_name] => test.example.2 [cat_parent] => 15 [cat_slug] => Test Example 2 ) [15] => Array ( [cat_id] => 15 [cat_name] => test.example.3 [cat_parent] => 6 [cat_slug] => Test Example 3 ) [6] => Array ( [cat_id] => 6 [cat_name] => test.example.4 [cat_parent] => 2 [cat_slug] => Test Example 4 ) [2] => Array ( [cat_id] => 2 [cat_name] => test.example.5 [cat_parent] => 0 [cat_slug] => Test Example 5 ) )