Как создать графически дерево с родителем и дочерним на основе уровня n из базы данных, используя массив в PHP?

У меня есть следующие данные в таблицу:

id parent_id child_id level
1 53987 52548 1
2 60764 52548 2
3 60764 53987 1
4 60764 59695 2
5 63457 59695 1
6 60764 63457 1

Итак, как я могу получить данные с помощью уровня и рекурсивно хранить данные в массиве, как [‘child_id’, ‘parent_id’, level]. Мне нужна помощь для написания запроса и создания дерева.

Дерево должно быть как:
введите описание изображения здесь

Примечание: я не могу изменить структуру таблицы базы данных. Мне нужно дерево, основанное на данной структуре таблицы.

1

Решение

Попробуйте этот запрос:

выберите идентификатор,
`Child_id`,
`parent_id`, уровень
из (выберите * из vtiger_ib_level
упорядочить по parent_id, id) products_sorted,
(выберите @pv: = '60764') инициализация
где find_in_set (`parent_id`, @pv)
и длина (@pv: = concat (@pv, ',', id))
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]