php递归删除目录下的文件但保留的实例分享


Posted in PHP onMay 10, 2014

用php程序删除目录和文件比到ftp删除有很多优势。首先进ftp就比较麻烦,然后删除大量文件的时候ftp删除很慢,还有就是程序只想删除文件夹下面的文件,而保留目录结构,可以用php来轻松的实现,再有比如生成的日志、缓存要清除用程序来完成显然轻松的多。

一:删除目录下面的文件,不删除目录

function delFileUnderDir( $dirName ){  
 if ( $handle = opendir( "$dirName" ) ) {  
   while ( false !== ( $item = readdir( $handle ) ) ) {  
    if ( $item != "." && $item != ".." ) {  
     if ( is_dir( "$dirName/$item" ) ) {  
      delFileUnderDir( "$dirName/$item" );  
     } else {  
      if( unlink( "$dirName/$item" ) ) echo "已删除文件:$dirName/$item<br />\n";  
     }  
    }  
   }  
   closedir( $handle );  
 }  
}

二:删除目录及目录下所有的文件

function delDirAndFile( $dirName ){  
 if ( $handle = opendir( "$dirName" ) ) {  
   while ( false !== ( $item = readdir( $handle ) ) ) {  
    if ( $item != "." && $item != ".." ) {  
     if ( is_dir( "$dirName/$item" ) ) {  
       delDirAndFile( "$dirName/$item" );  
      } else {  
       if( unlink( "$dirName/$item" ) )echo "已删除文件: $dirName/$item<br />\n";  
      }  
    }  
   }  
   closedir( $handle );  
   if( rmdir( $dirName ) ) echo "成功删除目录: $dirName<br />\n";  
 }  
}
PHP 相关文章推荐
PHP中在数据库中保存Checkbox数据(2)
Oct 09 PHP
apache rewrite_module模块使用教程
Jan 10 PHP
php ftp文件上传函数(基础版)
Jun 03 PHP
php中使用preg_match_all匹配文章中的图片
Feb 06 PHP
如何使用PHP批量去除文件UTF8 BOM信息
Aug 05 PHP
浅析get与post的一些特殊情况
Jul 28 PHP
dedecms中使用php语句指南
Nov 13 PHP
smarty简单入门实例
Nov 28 PHP
php根据日期显示所在星座的方法
Jul 13 PHP
thinkphp3.x中display方法及show方法的用法实例
May 19 PHP
PHP使用标准库spl实现的观察者模式示例
Aug 04 PHP
Thinkphp框架使用list_to_tree 实现无限级分类列出所有节点示例
Apr 04 PHP
PHP实现把MySQL数据库导出为.sql文件实例(仿PHPMyadmin导出功能)
May 10 #PHP
php使用mkdir创建多级目录入门例子
May 10 #PHP
一个简单的PHP验证码实现代码
May 10 #PHP
php生成随机密码自定义函数代码(简单快速)
May 10 #PHP
php实现按文件名搜索文件的远程文件查找器
May 10 #PHP
thinkphp实现面包屑导航(当前位置)例子分享
May 10 #PHP
php把数据表导出为Excel表的最简单、最快的方法(不用插件)
May 10 #PHP
You might like
PHP性能分析工具XHProf安装使用教程
2015/05/13 PHP
PHP模拟http请求的方法详解
2016/11/09 PHP
Laravel Validator自定义错误返回提示消息并在前端展示
2019/05/09 PHP
Aster vs Newbee BO3 第三场2.18
2021/03/10 DOTA
jquery1.4.2 for Visual studio 2010 模板文件
2010/07/14 Javascript
解决火狐浏览器下JS setTimeout函数不兼容失效不执行的方法
2012/11/14 Javascript
JavaScript中的this关键字介绍与使用实例
2013/06/21 Javascript
Jquery操作下拉框(DropDownList)实现取值赋值
2013/08/13 Javascript
JavaScript 节流函数 Throttle 详解
2016/07/04 Javascript
适用于手机端的jQuery图片滑块动画
2016/12/09 Javascript
js获取文件里面的所有文件名(实例)
2017/10/17 Javascript
使用原生js编写一个简单的框选功能方法
2019/05/13 Javascript
详解ng-alain动态表单SF表单项设置必填和正则校验
2019/06/11 Javascript
Nuxt使用Vuex的方法示例
2019/09/06 Javascript
Vue.js的模板语法详解
2020/02/16 Javascript
JavaScript HTML DOM 元素 (节点)新增,编辑,删除操作实例分析
2020/03/02 Javascript
js实现简易计算器小功能
2020/11/18 Javascript
[01:02:48]2018DOTA2亚洲邀请赛小组赛 A组加赛 Newbee vs Liquid
2018/04/03 DOTA
Python实现自动登录百度空间的方法
2017/06/10 Python
Python3 Random模块代码详解
2017/12/04 Python
django表单实现下拉框的示例讲解
2018/05/29 Python
使用pandas实现csv/excel sheet互相转换的方法
2018/12/10 Python
Django中ORM外键和表的关系详解
2019/05/20 Python
使用Pyinstaller转换.py文件为.exe可执行程序过程详解
2019/08/06 Python
python爬虫实现POST request payload形式的请求
2020/04/30 Python
导致python中import错误的原因是什么
2020/07/01 Python
英国儿童鞋和靴子:Start-Rite
2019/05/06 全球购物
韩语专业本科生求职信
2013/10/01 职场文书
音乐教育感言
2014/03/05 职场文书
教师节促销方案
2014/03/22 职场文书
艺术设计专业毕业生推荐信
2014/07/08 职场文书
写给老婆的保证书
2015/02/27 职场文书
餐厅保洁员岗位职责
2015/04/10 职场文书
赢在中国观后感
2015/06/02 职场文书
Redis安装启动及常见数据类型
2021/04/14 Redis
Mysql数据库事务的脏读幻读及不可重复读详解
2022/05/30 MySQL