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