多くの場合、開発プロセスではディスク上のファイルを直接操作する必要がありますが、これはプログラミングでは避けられません。次のコードでは、ディスク上のファイルを再帰的に削除する方法を紹介しています:
<?php /** * ======================================= * Created by Zhihua_W. * Author: Zhihua_W * Date: 2016/12/3 0005 * Time: 下午 5:21 * Project: PHP开发小技巧 * Power: 实现递归删除文件夹 * ======================================= */ /** * 递归删除文件夹 * @param $dir 文件夹路径 * @param string $file_type */ function delFile($dir, $file_type = '') { if (is_dir($dir)) { $files = scandir($dir); //打开目录 //列出目录中的所有文件并去掉 . 和 .. foreach ($files as $filename) { if ($filename != '.' && $filename != '..') { if (!is_dir($dir . '/' . $filename)) { if (empty($file_type)) { unlink($dir . '/' . $filename); } else { if (is_array($file_type)) { //正则匹配指定文件 if (preg_match($file_type[0], $filename)) { unlink($dir . '/' . $filename); } } else { //指定包含某些字符串的文件 if (false != stristr($filename, $file_type)) { unlink($dir . '/' . $filename); } } } } else { delFile($dir . '/' . $filename); rmdir($dir . '/' . $filename); } } } } else { if (file_exists($dir)) unlink($dir); } }
ファイルのパスを渡すだけです。ファイルの下にあるすべてのファイルを削除するために使用できます。あなたも試してみてください......
以上がPHP 開発のヒント (5) - フォルダーの再帰的削除のコード例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。