Lieber Gunther,
Frage: Wie baue ich eine entsprechende Schleife/ Rekursion, sodass ich jedes enthaltene descendants-Array mit meiner Sortierfunktion sortiert bekomme?
Also der "Prototyp" eines Arrays sieht doch anscheinend so aus:
array
(
[id] => {string}
[level] => {positive Integer-Zahl}
[filetype] => {Buchstabe}
[name] => {string}
[title] => Array
(
[0] => {string}
[1] => {string}
[2] => {string}
)
[sort] => {string}
[descendants] => array({weiteres array dieses typs}, {weiteres array dieses typs}, ...)
)
Was Du eigentlich sortieren möchtest, ist doch der Index "descendants", oder? Dann brauchst Du zwei Ansätze:
1.) sortiere das root-Array (hat den Aufbau wie der "Prototyp") mittels
usort():
- schnappe den index "descendants" und sortiere ihn als eigenes Array
mittels einer weiteren Callback-Funktion (2.)
- lasse alle anderen Indices unangetastet!
2.) sortiere ein [descendants]-Array mittels usort()
- sollte die Callback-Funktion im Unter-Array weitere descendants
finden, so sortiert sie diese mittels usort() und der Callbackfunktion
in 1.)
- die Callback-Funktion untersucht das jeweilige Unter-Array und liefert
den typischen Rückgabe-Wert.
3.) Dadurch hast Du nun Rekursion.
Noch Fragen?
Liebe Grüße aus Ellwangen,
Felix Riesterer.
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)