1、删除目录及目录下所有的文件
2、删除目录下的所有文件但目录结构保留
3、删除指定文件
代码如下
/** +----------------------------------------------------------------------------------------- * 删除目录及目录下所有文件或删除指定文件 +----------------------------------------------------------------------------------------- * @param str $path 待删除目录路径 * @param int $delDir 是否删除目录,1或true删除目录,0或false则只删除文件保留目录(包含子目录) +----------------------------------------------------------------------------------------- * @return bool 返回删除状态 +----------------------------------------------------------------------------------------- */ function delDirAndFile($path, $delDir = FALSE) { if (is_array($path)) { foreach ($path as $subPath) delDirAndFile($subPath, $delDir); } if (is_dir($path)) { $handle = opendir($path); if ($handle) { while (false !== ( $item = readdir($handle) )) { if ($item != "." && $item != "..") is_dir("$path/$item") ? delDirAndFile("$path/$item", $delDir) : unlink("$path/$item"); } closedir($handle); if ($delDir) return rmdir($path); } } else { if (file_exists($path)) { return unlink($path); } else { return FALSE; } } clearstatcache(); }
这个函数和unlink有什么不一样?如果知道要删除的是一个文件可以直接使用unlink函数,如果不知道要删除的是一个文件还是文件件就可以使用上面的函数
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自学编程网。
- 本文固定链接: https://zxbcw.cn/post/198446/
- 转载请注明:必须在正文中标注并保留原文链接
- QQ群: PHP高手阵营官方总群(344148542)
- QQ群: Yii2.0开发(304864863)