Einen Hirarchischen-Baum aus einer Liste erstellen

Matthias Reitinger hat gesagt.:
Welcher Schritt ist denn nicht verständlich?
des is halt meistens so, dass man zwar einzelne schritten ca versteht, aber den zusammenhang nicht so ganz ...

Die Referenzen verstehe ich soweit noch ...

am wenigsten verstehe ich das in der Foreach-Schleife (lol, das ist ja der Hauptteil), naja was genau macht denn das:

PHP:
$nodeRefs[$element['ID']] = &$parent[$element['ID']];
</font></font>
 
firstlord18 hat gesagt.:
am wenigsten verstehe ich das in der Foreach-Schleife (lol, das ist ja der Hauptteil), naja was genau macht denn das:

PHP:
$nodeRefs[$element['ID']] = &$parent[$element['ID']];
Dadurch wird der Liste $nodeRefs ein neuer Eintrag hinzugefügt, der auf das soeben (eine Zeile vorher) erstellte Element verweist.
 
hm, stimmt eigentlich :)
Und der erste Schritt in der foreach Schleife ist doch, dass ein dann entweder ein neuer Key im Output Array angelegt wird, oder (falls der Key schon existiert), eine Ebene tiefer gegangen wird !?
 
Desto länger ich es mir anschaue desto mehr sinn ergibt es also desto transparenter wird es aber verstehen nein...
ich habe das gefühl das nodeRefs und outputArray ein und dasselbe sind...
 
Hi,

ich habe ewig nach einer solch genialen Funktion gesucht, da ich genau das Problem habe, aus der beschriebenen Struktur dynamisch ein Menü zu erstellen.

Jetzt habe ich nur noch ein Problem, und zwar möchte ich das ganze in einem Listenfeld ausgeben. Und dazu reichen meine Array-Kenntnisse leider nicht aus :confused:

Wäre super dankbar für einen Tipp, wie ich das anstelle.

Das Resultat sollte z.B. in etwa so aussehen:

Europa
- Deutschland
-- Bayern
--- München
--- Nürnberg
-- Hessen
- Österreich
-- Voralberg
...
Amerika
- USA
-- Florida
-- Kalifornien
...

Viele Grüße,
Martin
 
Hi,

vielen Dank für die schnelle Antwort!

Ich sehe schon, das ist auch wieder garnicht so einfach. V.a. weil der Aufbau des Arrays in deinem Link um das Child-Kennzeichen von Mathias Reitingers Beispiel, das ich eingesetzt hab, abweicht.

Wenn du mir einen Tipp geben könntest, wie ich es in o.g. Beispiel mit einbaue, müsste ich mit der Fuktion print_asList() eigentlich zurecht kommen.

Viele Grüße,
Martin
 
Zurück