Hvis indlejrede sæt ikke er en mulighed, kender jeg til følgende:
- Hvis dataene er ordnet, så børn af en forælder altid følger efter dens forælder, kan du løse dette med én database-forespørgsel over alle data ved at springe skjulte noder over i outputtet.
Dette fungerer på samme måde med et sorteret indlejret sæt, princippet er også beskrevet i dette svar Algoritmerne om at få dybden virker dog ikke, og jeg vil foreslå en rekursiv iterator der er i stand til at fjerne skjulte elementer.
Hvis dataene ikke er ordnet, kan du også oprette en træstruktur fra den (usorterede) forespørgsel for alle rækker som beskrevet i svaret til Indlejret array. Tredje niveau forsvinder
. Ingen rekursion nødvendig, og du får en struktur, du nemt kan udskrive, så skulle jeg have dækket det for <ul>/<li>
html-stil output i et andet svar også.
- Svar til Hvordan kan jeg konvertere en række forældre-barn-relationer til et hierarkisk træ ?
- Svar til Hvordan får man en indlejret HTML-liste fra objektets array-postsæt?