ホームページ >バックエンド開発 >PHPの問題 >PHPで空ではないフォルダーを削除する方法

PHPで空ではないフォルダーを削除する方法

藏色散人
藏色散人オリジナル
2021-03-03 09:15:222709ブラウズ

php で空ではないフォルダーを削除する方法: 最初に PHP サンプル ファイルを作成し、次にディレクトリ内にファイルまたはフォルダーがあるかどうかを確認し、最後に再帰を使用してディレクトリ内のすべてのファイルとフォルダーを削除します。

PHPで空ではないフォルダーを削除する方法

この記事の動作環境: Windows 7 システム、PHP バージョン 7.1、DELL G3 コンピューター。

PHP は空ではないディレクトリ/フォルダーを削除します

PHP 独自のファイル システム関数 rmdir() を使用すると、ディレクトリを削除するときに問題が発生することがよくあります。削除される項目は空である必要があります。空でない場合は、エラーが報告されます。

空でないディレクトリを削除するには、まずディレクトリ内にファイルまたはフォルダがあるかどうかを確認し、存在する場合は、ディレクトリ内のすべてのファイルまたはフォルダを再帰的に削除してから、ディレクトリを削除します。

具体的な操作は次のとおりです:

1. 関数定義

function deldir($dir) {
    $dh=opendir($dir);
    while ($file=readdir($dh)) {
        if($file!="." && $file!="..") {
            $fullpath=$dir."/".$file;
            if(!is_dir($fullpath)) {
                unlink($fullpath);
            } else {
                deldir($fullpath);
            }
        }
    }
    closedir($dh);
    if(rmdir($dir)) {
        return true;
    } else {
        return false;
    }
}

2. ディレクトリの削除

function doDel(){
    $dir="./src/folder";
    if(deldir($dir)){
        echo("删除成功");
    }else{
        echo("删除失败");
    }
}

原理の説明:

まずこれを確認してください ディレクトリにファイルはありますか? 存在する場合、フォルダであればこの関数を呼び出して削除し、ファイルであれば直接 unlink を呼び出して削除し、最後にディレクトリを削除します。

注:

フォルダーを操作する権限があることを確認してください

[推奨: PHP ビデオ チュートリアル]

以上がPHPで空ではないフォルダーを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。