Heim > Backend-Entwicklung > PHP-Problem > So löschen Sie ein Verzeichnis in PHP

So löschen Sie ein Verzeichnis in PHP

藏色散人
Freigeben: 2023-03-13 15:02:01
Original
4748 Leute haben es durchsucht

So löschen Sie ein Verzeichnis in PHP: 1. Erstellen Sie eine PHP-Beispieldatei. 2. Suchen Sie das Verzeichnis, das gelöscht werden muss. 3. Verwenden Sie die Funktion rmdir(), um das angegebene Verzeichnis zu löschen.

So löschen Sie ein Verzeichnis in PHP

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP-Version 7.1, DELL G3-Computer

Wie lösche ich ein Verzeichnis mit PHP?

PHP rmdir(): Löschen Sie ein Verzeichnis

Ähnlich wie Normale Dateien, wenn Sie eine bestimmte bestätigen, wird dieses Verzeichnis nicht mehr verwendet, sodass Sie dieses Verzeichnis löschen können. In PHP können Sie die Funktion rmdir() verwenden, um ein bestimmtes Verzeichnis zu löschen. Das Syntaxformat dieser Funktion ist wie folgt:

rmdir(string $dirname[, resource $context])
Nach dem Login kopieren

Dabei ist der Parameter $dirname der zu löschende Verzeichnispfad; Parameter, der zum Angeben der Dateiumgebung des Handles verwendet wird.

Hinweis: Wenn Sie die Funktion rmdir() zum Löschen eines angegebenen Verzeichnisses verwenden, muss das Verzeichnis leer sein und über entsprechende Berechtigungen verfügen. TRUE wird zurückgegeben, wenn die Funktion erfolgreich ausgeführt wurde, und FALSE wird zurückgegeben, wenn die Ausführung fehlschlägt. Wenn ein nicht leeres Verzeichnis gelöscht wird, wird ein Fehler der Ebene E_WERNING generiert.

【Beispiel】Verwenden Sie die Funktion rmdir(), um das angegebene Verzeichnis zu löschen.

<?php
    $dir = &#39;./test&#39;;
    if(is_dir($dir)){
        if(rmdir($dir)) echo &#39;目录删除成功!&#39;;
    }else{
        echo "目录不存在!";
    }
?>
Nach dem Login kopieren

Um den obigen Code auszuführen, stellen Sie zunächst sicher, dass das Testverzeichnis leer ist, andernfalls erscheint die folgende Fehlermeldung:

Warning: rmdir(./test): Directory not empty in D:\WWW\index.php on line 4
Nach dem Login kopieren

Was soll ich tun, wenn ich ein Verzeichnis löschen möchte, das nicht leer ist? Wir können alle Dateien und Ordner in diesem Verzeichnis durchlaufen und alle Dateien und Ordner in diesem Verzeichnis einzeln rekursiv löschen. Das Folgende wird durch Beispielcode demonstriert:

<?php
    function deldir($path){
        //如果是目录则继续
        if(is_dir($path)){
            //扫描一个文件夹内的所有文件夹和文件并返回数组
            $p = scandir($path);
            //如果 $p 中有两个以上的元素则说明当前 $path 不为空
            if(count($p)>2){
                foreach($p as $val){
                    //排除目录中的.和..
                    if($val !="." && $val !=".."){
                        //如果是目录则递归子目录,继续操作
                        if(is_dir($path.$val)){
                            //子目录中操作删除文件夹和文件
                            deldir($path.$val.&#39;/&#39;);
                        }else{
                            //如果是文件直接删除
                            unlink($path.$val);
                        }
                    }
                }
            }
        }
        //删除目录
        return rmdir($path);
    }
    //设置需要删除的文件夹
    $path = "./test/";
    //调用函数,传入路径
    deldir($path);
?>
Nach dem Login kopieren

Empfohlenes Lernen: „PHP-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo löschen Sie ein Verzeichnis in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage