PHP でフォルダーを削除するには、通常は再帰的に削除を使用します。具体的な手順は次のとおりです:
フォルダーを開いてサブディレクトリをスキャンします: を使用します。 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; }
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 サイトの他の関連記事を参照してください。