PHPでフォルダを削除する方法を説明する例

PHPz
リリース: 2023-04-04 20:20:02
オリジナル
589 人が閲覧しました

PHP でフォルダーを削除するには、通常は再帰的に削除を使用します。具体的な手順は次のとおりです:

  1. フォルダーを開いてサブディレクトリをスキャンします: を使用します。 opendir()フォルダーを開き、readdir() メソッドを使用してファイル/フォルダーをスキャンします。スキャン中に、各サブディレクトリがフォルダーまたはファイルであるかどうかを確認し、複数レベルのサブディレクトリへのパスを配列に保存します。

    function deleteFolder($folderPath) {
        if (!is_dir($folderPath)) return false; // 确认路径是一个目录
        $folderIterator = new RecursiveDirectoryIterator($folderPath, RecursiveDirectoryIterator::SKIP_DOTS);
        $iterator = new RecursiveIteratorIterator($folderIterator, RecursiveIteratorIterator::CHILD_FIRST);
        foreach ($iterator as $file) {
            if ($file->isDir()){
                rmdir($file->getRealPath());
            }else{
                unlink($file->getRealPath());
            }
        }
        rmdir($folderPath);
        return true;
    }
    ログイン後にコピー
    ログイン後にコピー
  2. すべてのファイルとフォルダーを再帰的に削除します: 手順 1 では、複数レベルのサブディレクトリ パスが保存されます。ここで、フォルダーのサブフォルダーの削除を最初に実行する必要があるため、配列を逆の順序で繰り返します。
  3. ルート フォルダーを削除する : 最終的には、rmdir() 関数を使用してルート フォルダーを削除します。

完全なコード:

function deleteFolder($folderPath) {
    if (!is_dir($folderPath)) return false; // 确认路径是一个目录
    $folderIterator = new RecursiveDirectoryIterator($folderPath, RecursiveDirectoryIterator::SKIP_DOTS);
    $iterator = new RecursiveIteratorIterator($folderIterator, RecursiveIteratorIterator::CHILD_FIRST);
    foreach ($iterator as $file) {
        if ($file->isDir()){
            rmdir($file->getRealPath());
        }else{
            unlink($file->getRealPath());
        }
    }
    rmdir($folderPath);
    return true;
}
ログイン後にコピー
ログイン後にコピー

使用例:

$folderPath = "path/to/your/folder/";
deleteFolder($folderPath);
echo "文件夹删除成功!";
ログイン後にコピー

注: このコードは、確認を求めるプロンプトを表示せずに、フォルダーとそのすべての内容を直接削除します。したがって、使用する前に、このフォルダー内のすべてをバックアップしていることを確認してください。

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート