Heim >Backend-Entwicklung >PHP-Tutorial >Wie lösche ich Verzeichnisse und deren Inhalte rekursiv in PHP?
Rekursives Löschen von Verzeichnissen und deren Inhalten in PHP
Bei der Aufgabe, ein Verzeichnis und seine gesamte Struktur in PHP zu löschen, wird häufig ein rekursiver Ansatz verwendet gesucht. Dabei werden nicht nur Dateien im Zielverzeichnis, sondern auch alle verschachtelten Unterverzeichnisse und deren Inhalte effizient gelöscht.
Lösung:
Der vom Benutzer beigesteuerte Abschnitt des PHP-Handbuchs für rmdir bietet Folgendes eine praktische Implementierung für dieses rekursive Löschszenario:
function rrmdir($dir) { if (is_dir($dir)) { $objects = scandir($dir); foreach ($objects as $object) { if ($object != "." && $object != "..") { if (is_dir($dir . DIRECTORY_SEPARATOR . $object) && !is_link($dir . "/" . $object)) { rrmdir($dir . DIRECTORY_SEPARATOR . $object); } else { unlink($dir . DIRECTORY_SEPARATOR . $object); } } } rmdir($dir); } }
Wie es ist Funktioniert:
Für jede Datei oder jedes gefundene Unterverzeichnis:
Das obige ist der detaillierte Inhalt vonWie lösche ich Verzeichnisse und deren Inhalte rekursiv in PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!