Hello,
Kannst Du mal schauen, ob das so funktioniert, wie gedacht und ich mir nicht versehentlich bei ungünstigen Bedingungen was kaputt mache?
Du hast aber scheinbar meine Ratschläge nur als Schläge empfunden, nicht als Rat?
Sonst hättest Du sie sicherlich berücksichtigt. :-)
function dir_rekursiv($verzeichnis)
{
$handle = opendir($verzeichnis);
# while ($datei = readdir($handle))
while (false!==($datei = readdir($handle)))
{
if ($datei != "." && $datei != ".." && $datei != "backup")
{
if (is_dir($verzeichnis.$datei)) // Wenn Verzeichniseintrag ein Verzeichnis ist
{
// Erneuter Funktionsaufruf, um das aktuelle Verzeichnis auszulesen
dir_rekursiv($verzeichnis.$datei.'/');
# hier hängt sich das Script auf in einer Endlosschliefe, wenn es sich
# bei dem Verzeichnis um einen Link auf ein Verzeichnis handelt, der auf
# eine höhere Ebene desselben Baumes verweist.
# Du musst entweder Links auf Verzeichnisse ausschließen von der Bearbeitung
# oder eine Liste der aufgelösten Pfade mitschreiben. Wenn dann ein Pfad
# (Realpath()) schon in der Liste enthalten ist, wird er nicht nochmal
abgearbeitet.
}
else
[...]
Den Rest habe ich mir nicht weiter angeschaut.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg

--
Nur selber lernen macht schlau
<http://bergpost.annerschbarrich.de>