递归删除指定目录下的指定文件夹及其所有文件
2013-06-26 19:25
761 查看
<?php function deldir($dir) { //先删除目录下的文件: $dh=opendir($dir); while ($file=readdir($dh)) { if($file!="." && $file!="..") { $fullpath=$dir."/".$file; chmod($fullpath,0777); if(!is_dir($fullpath)) { unlink($fullpath); } else { deldir($fullpath); } } } closedir($dh); //删除当前文件夹: if(rmdir($dir)) { return true; } else { return false; } } function findDir($dir) { if(!$handle=@opendir($dir)){ //检测要打开目录是否存在 die("没有该目录"); } while(false !==($file=readdir($handle))){ if($file!=="."&&$file!==".."){ //排除当前目录与父级目录 $file1 = $file; $file=$dir .'/'. $file; if(is_dir($file)){ if($file1 == 'jami'){ deldir($file); }else{ findDir($file); } } } } } findDir('F:\wamp\www2\phone_backup\Code\v1.12');
/** * 清理临时文件 */ static public function clearTmpfile() { $path = Yii::app()->getRuntimePath(); $path .= '/spider/'; $dirs = array_diff(scandir($path), array('.', '..')); foreach ($dirs as $dir) { if (is_dir($path . '/' . $dir)) { self::rmdir($path . '/' . $dir); } } } /** * 递归删除文件 */ static public function rmdir($path) { $dirs = array_diff(scandir($path), array('.', '..')); foreach ($dirs as $dir) { $file = $path . '/' . $dir; if (is_file($file)) { unlink($file); } else if (is_dir($file)) { self::rmdir($file); } } rmdir($path); }
//每个文件夹最多5000个文件
$path = Yii::app()->getRuntimePath() . '/spider/task-'.intval($id / 5000);
if (!file_exists($path)) {
self::mkdir($path, 0777, true);
}
$file = $path . '/' . $id;
相关文章推荐
- Python_删除/创建指定目录及其下所有子目录的文件,该文件记录当前文件夹的内容
- asp.net 删除文件夹,指定文件夹,删除文件夹和所有文件,删除权限设置,递归删除文件夹目录及文件
- asp.net 删除文件夹,指定文件夹,删除文件夹和所有文件,删除权限设置,递归删除文件夹目录及文件
- asp.net 删除文件夹,指定文件夹,删除文件夹和所有文件,删除权限设置,递归删除文件夹目录及文件
- Python_删除/创建指定目录及其下所有子目录的文件,该文件记录当前文件夹的内容
- python递归删除指定目录及其所有内容的方法
- java 递归实现删除或查询指定文件夹下的所有文件
- HDFS练习5-----删除指定目录下的所有的空文件和空文件夹(包含子文件夹下的内容)
- java递归删除指定目录下的文件和文件夹
- 递归遍历指定目录下所有指定的文件并删除
- 【原创】C# 递归获取指定目录的子目录及其所有文件
- PHP删除指定目录下所有文件夹以及文件
- File,把指定的目录下的所有文件和文件夹删除的方法
- 递归删除指定文件夹下所有文件
- 这是一个定时脚本,主要功能是遍历该文件夹下的所有文件并存储到数组,对数据中的文件进行操作,一个一个移动到指定的目录下,并删除原有文件
- 非递归遍历指定文件夹下的所有文件及其子文件夹 [11/29/2010 更新]
- 递归删除一个非空目录及其下所有文件和目录
- php将某个指定目录下的所有文件及文件夹删除
- 删除指定文件夹中的所有文件(递归删除)
- JavaSE 文件递归之删除&获取文件夹目录中所有的以.jpg的文件的绝对路径