Verzeichnis mit PHP rekursiv löschen

Kategorie: PHP
Publikationsdatum: 22.04.2011
Achtung: Diese Funktion löscht ein Verzeichnis mit allen Sub-Verzeichnisse(rekursiv). Prüfen Sie Ihren Code immer bevor Sie diese Funktion einsetzen!
PHP
  1. function delete_directory($dirname)
  2. { if(is_dir($dirname)) $dir_handle = opendir($dirname);
  3.  
  4. //Falls Verzeichnis nicht geoeffnet werden kann, mit Fehlermeldung terminieren
  5. if(!$dir_handle)
  6. { echo "Verzeichnis nicht gfunden! ({$dirname})";
  7. return false;
  8. }
  9.  
  10. while($file=readdir($dir_handle))
  11. { if($file!="." && $file!="..")
  12. { if(!is_dir($dirname."/".$file))
  13. { //Datei loeschen
  14. @unlink($dirname."/".$file);
  15. }
  16. else
  17. { //Falls es sich um ein Verzeichnis handelt, "delete_directory" aufrufen
  18. delete_directory($dirname.'/'.$file);
  19. }
  20. }
  21. }
  22.  
  23. closedir($dir_handle);
  24. //Verzeichnis loeschen
  25. rmdir($dirname);
  26. return true;
  27. }
Stichwörter: Verzeichnis, löschen, rekursiv, PHP, Funktion
 
 
NACH OBEN