foreach in Rekursiver funktion
Hallo.
Ich habe fuer ein Script geschrieben, welches mir erlaubt schnell ein verschachteltes Menue zu erstellen.
Bei der Ausgabe des Menus treten allerdings noch fehler auf.
Ich moechte euch vorerst nicht mit dem quelltext belasten weil er lang ist und nur im ganzen zu verstehen.
Das Ergebnis soll ungefaehr so aussehen:
Punkt1
Punkt2
Punkt3
Punkt3.1
Punkt3.2
Punkt3.2.1 (aktiv)
Punkt3.2.2
Punkt3.3
Punkt3.4
Punkt4
verstanden...?
Bei mir gibt er es allerdings folgendermassen aus:
Punkt1
Punkt2
Punkt3
Punkt3.1
Punkt3.2
Punkt3.2.1 (aktiv)
Der Programmablauf sieht im groben so aus.
Das ganze ist eine Funktion mit einem Parameter $i.
Der Parameter $i gibt die Verschachtelungsstufe an (fuer Punkt1 =>0, fuer Punkt1.1 =>1 fuer Punkt1.1.2 =>2, etc)
Die Menupunkte sind alle in einem Array.
per foreach wird das array durchsucht, sobald ein Eintrag der niedrigsten Verschachtelungsstufe gefunden wird wird der ausgegeben. Wenn es sich dabei um ein Elterneintrag der aufgerufenen Seite (in dem Fall Punkt3.2.1) handelt (in dem Fall 3.2 und 3) wird dieser entsprechend gekennzeichnet und die Funktion wird mit $i-1 aufgerufen (falls $i<0).
In meinen Augen sollte das klappen.
Denkt ihr es gibt dort einen Denkfehler? Wenn nicht arbeite ich euch den Quelltext mal auf... vllt hilft der ja.
|