Hi,
ich möchte ein Hauptverzeichnis angeben und eine Funktion soll mir alle Unter-Verzeichnisse mit deren Dateien ausgeben.
Habe schon eine Funktion geschrieben, leider ist sie sehr langsam
PHP-Code:
function walk_folder($verzeichnis = 0, $level){
$temp = array();
$array_counter = 0;
$spacer;
//Ausgabe des Verzeichnisnamen
echo "
[b]".str_replace ('\\', ' ', strrchr($verzeichnis, "\\"))."[/b]<hr color=719ee1 width=350 align=left>\n";
//Versuche das Verzeichnis zu lesen
if($dir = opendir($verzeichnis)){
// Lese alles aus dem Verzeichnis aus und schreibe es in das Array files
$files = scandir($verzeichnis);
//Gehe nun files komplett durch und suche nach Verzeichnissen
foreach ($files as $value)
if (strlen($value) > 2) //Wenn mehr als 2 Zeichen im String vorhanden sind
// Wenn es kein Verzeichnis ist, muss es eine Datei sein
if (!is_dir($verzeichnis."//".$value)){
//for ($zaehler = 0; $zaehler != $level; $zaehler++) echo "";
echo "- [url='".$verzeichnis.']".substr($value, 0, strpos($value, "."))."[/url]
\n";
//Ansonsten ist es ein Verzeichnis -> Speicher in das Array $temp
}else $temp[$array_counter++] = $verzeichnis.'.$value;
//Wenn es einen Fehler gibt gebe den Fehler aus
//Gehe alle gefundenen Verzeichnisse rekursiv durch
foreach ($temp as $value) walk_folder($value, $level++);
//Schließe das Verzeichnis
closedir($dir);
}else echo "Fehler beim Öffnen des Verzeichnisses";
}// Ende der Funktion
Gibt es einfachere (schnellere Variante)?
Vielen Dank
Gruss
Unknown