Enrico: Wieder einmal "Verzeichnis auslesen" :-(

Beitrag lesen

Hallo,

Entschuldigt bitte, wenn ich Euch wieder einmal mit meinem Problem "Verzeichnis einlesen" bemühen muss, aber irgendwie bekomme ich den Code nicht richtig hin.

Das Problem noch einmal im Detail beschrieben:

Ich habe folgende Ordnerstruktur:

Ordner "pic/pic/klein/"
   |
   +--- Ordner 1
   |       |
   |       +--- Bild 1
   |       +--- Bild 2
   |       +--- Bild 3
   |
   +--- Ordner 2
           |
           +--- Bild 1
           +--- Bild 2
           +--- Bild 3

Ich will nun alle Elemente (Verzeichnisname und darin ehthaltene Bilder) in ein mehrdimensionales Array einlesen, das letztendlich folgenden schematischen Aufbau haben soll:

$ArrayVerzeichnis ['Name']['ORDNERNAME']['Bilder'] = Bild 1, Bild 2, Bild 3

Mit folgendem Code scheint das Auslesen des Verzeichnisses "pic/pic/klein" und die Zuordnung zu den jeweiligen Arrays zu funktionieren. Wohl gemerkt "scheint", da die Ausgabe nicht funktioniert:

function VerzeichnisEinlesen ($Verzeichnis)
{
  $Verzeichnis = @opendir ($Verzeichnis);

while ($Eintrag = @readdir())
  {
    if (eregi ("^.{1,2}$", $Eintrag))
      continue;

if (is_dir ($Eintrag))
    {
      $ArrayVerzeichnis ['Name'] = $Eintrag;
      eval ("$ArrayVerzeichnis ['Name']['" . $Eintrag . "']['Bilder'] = array ();");
      VerzeichnisEinlesen ($Verzeichnis.$Eintrag . "/");
    }
    else
      $ArrayVerzeichnis ['Name']['" . $Eintrag . "']['Bilder'] = $Eintrag;
  }

closedir ($Verzeichnis);
  return $ArrayVerzeichnis;
}

$ArrayVerzeichnis          = array ();
$ArrayVerzeichnis ['Name'] = array ();

$ArrayVerzeichnis ['Name'] = VerzeichnisEinlesen ("pic/pic/klein/");

//
// Debugging
//

for ($i = 0; $i < sizeof ($ArrayVerzeichnis ['Name']); $i++)
{
  echo "<b>Verzeichnis: " . $ArrayVerzeichnis ['Name'][$i] . "</b><br>";
}

Greife ich auf das mehrdimensionale Array nur falsch zu oder liegen (noch) andere Fehler vor ?

Gruss, Enrico