Mailinglisten-Archive |
Hi!
>Wie schreibe ich eine Script, dass alle Files eines Verzeichnisses
inkl.
>Aller Unterverzeichnisse und dessen Files (und Unterverzeichniss...)
>ausgiebt, ohne eine unentliche IF Verschachtelung zu schreiben.
**Die Rekursion (eine Funktion, die sich selber aufruft) ist dein
Freund :)
Hab da mal eben was zusammengebastelt. Ist vieleicht nicht optimal,
aber funktioniert. Die Funktion erwartet ein Verzeichnis als Parameter
und gibts alle Dateien des Verzeichnisses als Array zurück.
function get_dir_recursiv($path) {
if(is_dir($path)) {
if(!preg_match('/\/$/',$path))
$path .= '/';
// Wenn du im Array auch die Verzeichnisse selber haben
// willst, entferne hier die Kommentarzeichen.
// $files[] = $path;
$handle=opendir($path);
while ($file = readdir ($handle)) {
if ($file != "." && $file != "..") {
if(is_dir($path.$file)) {
$files = array_merge($files,get_dir_recursiv($path.$file));
}
else
$files[] = $path.$file;
}
}
closedir($handle);
}
else
echo "<b>Error:</b> '$path' is not a directory!";
return $files;
}
cu, Roland
--
tapken_(at)_engter.de
-ICQ#: 18715473-------------------------
It's only a papermoon.
----------------------------------------
php::bar PHP Wiki - Listenarchive