Ако вложените набори не са опция, знам за следното:
- Ако данните са подредени така, че децата на родител винаги да следват след неговия родител, можете да решите това с една заявка към база данни върху всички данни, като пропуснете скритите възли в изхода.
Това работи еднакво и с сортиран вложен набор, принципът е описан в този отговор обаче алгоритмите за получаване на дълбочина не работят и бих предложил рекурсивен итератор който може да премахва скрити елементи.
Също така, ако данните не са подредени, можете да създадете дървовидна структура от (несортирана) заявка на всички редове, както е описано в отговорът на Вложен масив. Трето ниво изчезва
. Не е необходима рекурсия и получавате структура, която можете лесно да изведете тогава, трябваше да покрия това за <ul>/<li>
HTML стил извежда и в друг отговор.
- Отговор на Как мога да преобразувам поредица от връзки родител-дете в йерархично дърво ?
- Отговор на Как да получа вложен HTML списък от масива на записите на обекта?>