Felix Riesterer: Und??

Beitrag lesen

Lieber Jeena,

Ja aber wie kriege ich deine Funktion so umgebaut dass sie als Quelle diese Textdatei nimmt?

das ist (denke ich) ganz einfach! Meine Original-Funktion hatte als Ausgangs-Inhalt ein Array, in dem Strings gespeichert waren, in denen die Pfade der Dateien und Verzeichnisse enthalten waren (Rückgabe-Wert der Funktion make_tree()):

[0] => "main/datei1.xyz"
[1] => "main/ordner"
[2] => "main/ordner/dateix.xyz"
usw.

Deine Datenvorlage ist ähnlich:

  • a
  • b
    -- ba
    -- bb
    -- bc
  • c
    -- ca
    --- caa
    --- cab
    --- cac
    ---- caca
    ---- cacb
    ---- cacc
  • d
    -- da
  • e
  • f

Um jetzt das assoziative Array herzustellen nimmt die Funktion dateistruktur() dieses Array und explodiert die Elemente nach Slashes (weil damit die Verzeichnis-Struktur umgesetzt wird). In Deinem Fall ist die Datenvorlage so noch nicht dazu geeignet.

Mein Vorschlag:
Schreib eine Funktion oder Schleife, die Deine Textvorlage entsprechend "umschreibt", so dass hinterher folgende Struktur für meine Funktion entsteht:

- a  
- b  
- b - a  
- b - b  
- b - c  
- c  
- c - a  
- c - a - a  
- c - a - b  
- c - a - c  
- c - a - c - a  
- c - a - c - b  
- c - a - c - c  
- d  
- d - a  
- e  
- f  
- f - a  
- f - a - a

Jetzt kannst Du die Zeilen anhand von "- " explodieren und erhälst ein Array, mit dem Du meine Funktion "dateistruktur()" 1:1 weiterverwenden kannst.

Mit einer simplen For-Schleife sollte es möglich sein, in jeder Zeile zwischen die Buchstaben (oder wofür sie auch immer stehen) entsprechende Trennzeichen ("-") einzufügen...

Bin jetzt aber sehr auf Deine Antwort gespannt!

Liebe Grüße aus Ellwangen,

Felix Riesterer.