Felix Riesterer: Über Array iterien und Unterarrays sortieren

Beitrag lesen

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:)