22.11 Ein Verzeichnis und seinen Inhalt löschen

Problem

Sie wollen ein Verzeichnis und seinen gesamten Inhalt löschen, einschließlich der Unterverzeichnisse und deren Inhalt.

Lösung

Unter Unix verwenden Sie rm:

$directory = escapeshellarg($directory);
exec("rm -rf $directory");

Unter Windows verwenden Sie rmdir:

$directory = escapeshellarg($directory);
exec("rmdir /s /q $directory");

Diskussion

Natürlich kann es gefährlich sein, Dateien zu löschen. Stellen Sie sicher, dass Sie $directory mit escapeshellarg( ) entschärfen, so dass Sie nicht unbeabsichtigt Dateien löschen.

Da die in PHP eingebaute Funktion rmdir( ) nur leere Verzeichnisse löschen kann und unlink( ) keine Shell-Wildcards akzeptiert, ist das Aufrufen eines Systemprogramms viel einfacher, als ...

Get PHP 5 Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.