Мне нужно строки из таблицы в многоуровневые массивы. Как это сделать, я не могу понять, и найти в поиске тоже, потому что не могу сформулировать правильный запрос.
У меня имеется таблица в базе данных с сотнями строк состоящие из нескольких полей
ID (ai) | NAME | PARENT
Представим это как категории. Если PARENT в строке NULL, значит это первый уровень. Уровней вложений может быть бесконечно. Если в PARENT имеется какое то значение, то оно относится по ID к одному из значений выше в этой таблице, это дочерний элемент.
По итогу мне нужно получить с вложенными дочерними элементами многоуровневый массив. Давайте покажу на примере
Например имеем:
ID | NAME | PARENT
--------------------
1 | тест 1 | NULL
2 | тест 2 | NULL
3 | тест 3 | 1
4 | тест 4 | 3
Сначала выгружаю весь список из бд, а дальше нужно распределить по массиву кто в кого вложен. Должен получиться такой массив
1. tamerlan212 - 05 Апреля, 2024 - 18:02:35 - перейти к сообщению
Как это можно реализовать?
Возникали идеи с foreach, но в итоге заходил в тупик когда нужно как то в памяти хранить очередность вложений того или иного родителя