У меня есть эта таблица в моей БД (я надеюсь, что это правильно показал):создать иерархию подкатегорий многомерного массива
+++++++++++++++++++++++++++ | id_child |--| id_parent | +++++++++++++++++++++++++++ | 5 |--| 2 | | 6 |--| 2 | | 7 |--| 4 | | 8 |--| 4 | | 9 |--| 5 | | 10 |--| 5 | | 11 |--| 9 | | 12 |--| 9 | ---------------------------
Я написал PHP рекурсивной функцию, которые создают многомерный массив из родителей передаются (в этом случай '2'). Итак, если я поставлю print_r я получить этот результат:
Array ([5] => Array ([9] => Array ([11] => Array () [12] => Array ()) [10] => Array ()) [6] => Array ())
Как я могу получить структуру этого типа? (я исключаю первый родитель, 2)
(2) -5 --9 ----11 ----12 --10 -6
Спасибо.
(в) klkvsk, (в) Евгений Rieck: ваши решения отлично работают. Есть ли лучшее решение, чем массив для быстрого получения родительского элемента дочернего элемента и дочерних элементов родителя? – Tab
Например: если я хочу получить детей родителя = 9 (11 и 12), есть ли простой способ? Я думаю, что мой массив будет изменен. – Tab
Просто запустите свою рекурсивную функцию при ID = 9 и создайте новый массив оттуда –