Все сервисы Хабра
Сообщество IT-специалистов
Ответы на любые вопросы об IT
Профессиональное развитие в IT
Закрыть
Задать вопрос
daMage
@daMage
PHP
Как реализовать иерархию директорий на php
Не могу понять как сделать бесконечное дерево нодов одним запросом к бд. Таблица имеет вид
id, dir, parent. С рекурскией и несколькими запросами понятно, но может можно оптимизировать код? Подскажите, пожалуйста.
Вопрос задан
более трёх лет назад
2523 просмотра
Комментировать
Подписаться
2
Оценить
Комментировать
Facebook
Вконтакте
Twitter
Решения вопроса
2
FanatPHP
@FanatPHP
Чебуратор тега РНР
Если надо получить именно бесконечное - т.е. целиком - то запрос как раз и будет один.
А потом в скрипте сортировать.
А если только ветку - то никак. Список смежности для этого не подходит, надо хранить по-другому. Гуглить Nested Sets и Materialized path
Ответ написан
более трёх лет назад
Комментировать
Нравится
2
Комментировать
Facebook
Вконтакте
Twitter
Андрей
@kaasius
Если дерево не перестраивается - годный вариант nested sets.
Если дерево перестраивается - наиболее годный вариант - materialized path + parent
Ответ написан
более трёх лет назад
Комментировать
Нравится
Комментировать
Facebook
Вконтакте
Twitter
Пригласить эксперта
Ответы на вопрос
0
Ваш ответ на вопрос
Войдите, чтобы написать ответ
Войти через центр авторизации
Похожие вопросы
PHP
+1 ещё
Средний
Как удалить весь текст кроме ссылок?
1 подписчик
вчера
128 просмотров
3
ответа
JavaScript
+2 ещё
Средний
Почему не получается обратиться к наследуемому свойству (php) через асинхронный запрос?
2 подписчика
19 апр.
1233 просмотра
1
ответ
PHP
+1 ещё
Простой
Как добавить данные в бд mssql 20 с помощью php sqlsrv?
1 подписчик
18 апр.
139 просмотров
2
ответа
PHP
Простой
Как объединить запросы в транзакцию?
2 подписчика
18 апр.
1263 просмотра
2
ответа
PHP
Простой
Разбивка на страницы?
1 подписчик
17 апр.
260 просмотров
1
ответ
PHP
Простой
Как найти опечатку в номере телефона?
1 подписчик
17 апр.
167 просмотров
3
ответа
PHP
+1 ещё
Простой
Почему array_count_values возвращает пустой массив?
1 подписчик
16 апр.
136 просмотров
1
ответ
PHP
Простой
Как разбить строку оператором explode?
1 подписчик
16 апр.
130 просмотров
1
ответ
PHP
+1 ещё
Простой
Как вывести данные из связанной таблицы?
1 подписчик
14 апр.
186 просмотров
1
ответ
PHP
+1 ещё
Простой
Ошибка с подписью транзакции в блокчейн?
3 подписчика
14 апр.
638 просмотров
0
ответов
Показать ещё
Загружается…
Вакансии с Хабр Карьеры
Middle PHP-developer / PHP-разработчик
Wanted.
До 250 000 ₽
PHP-разработчик
YCLIENTS
•
Москва
от 250 000 до 350 000 ₽
PHP-разарботчик
Wanted.
До 130 000 ₽
Минуточку внимания
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации
Закрыть
Реклама