php判断并删除空目录及空子目录的方法


Posted in PHP onFebruary 11, 2015

本文实例讲述了php判断并删除空目录及空子目录的方法。分享给大家供大家参考。具体实现方法如下:

步骤如下:

1.遍历目录及子目录
2.使用 scandir 判断目录是否为空,为空则使用rmdir 删除。

<?php 
/** 删除所有空目录 
* @param String $path 目录路径 
*/ 
function rm_empty_dir($path){ 
 if(is_dir($path) && ($handle = opendir($path))!==false){ 
  while(($file=readdir($handle))!==false){// 遍历文件夹 
   if($file!='.' && $file!='..'){ 
    $curfile = $path.'/'.$file;// 当前目录 
    if(is_dir($curfile)){// 目录 
     rm_empty_dir($curfile);// 如果是目录则继续遍历 
     if(count(scandir($curfile))==2){//目录为空,=2是因为.和..存在
      rmdir($curfile);// 删除空目录 
     } 
    } 
   } 
  } 
  closedir($handle); 
 } 
} 
$folder = '目标文件夹'; 
rm_empty_dir($folder); 
?>

使用 shell 则简单很多:

find 目标文件夹 -mindepth 1 -depth -empty -type d -exec rm -r {} \;

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
用PHP实现图象锐化代码
Jun 14 PHP
php magic_quotes_gpc的一点认识与分析
Aug 18 PHP
PHP获取当前文件所在目录 getcwd()函数
May 13 PHP
php中ftp_chdir与ftp_cdup函数用法
Nov 18 PHP
php检查字符串中是否包含7位GSM字符的方法
Mar 17 PHP
php获取远程文件大小
Oct 20 PHP
[原创]PHPCMS遭遇会员投稿审核无效的解决方法
Jan 11 PHP
Yii2配置Nginx伪静态的方法
May 05 PHP
理清PHP在Linxu下执行时的文件权限方法
Jun 07 PHP
PHP利用Mysql锁解决高并发的方法
Sep 04 PHP
laravel-admin表单提交隐藏一些数据,回调时获取数据的方法
Oct 08 PHP
PHP设计模式(九)外观模式Facade实例详解【结构型】
May 02 PHP
php获取YouTube视频信息的方法
Feb 11 #PHP
php实现图片局部打马赛克的方法
Feb 11 #PHP
php实现获取文件mime类型的方法
Feb 11 #PHP
php强制更新图片缓存的方法
Feb 11 #PHP
Laravel中使用自己编写类库的3种方法
Feb 10 #PHP
Laravel中使用阿里云OSS Composer包分享
Feb 10 #PHP
PHP实现Javascript中的escape及unescape函数代码分享
Feb 10 #PHP
You might like
php访问查询mysql数据的三种方法
2006/10/09 PHP
浅析PHP页面局部刷新功能的实现小结
2013/06/21 PHP
PHP扩展CURL的用法详解
2014/06/20 PHP
利用ajax和PHP实现简单的流程管理
2017/03/23 PHP
Laravel框架实现定时发布任务的方法
2018/08/16 PHP
如何设置iframe高度自适应在跨域情况下的可用方法
2013/09/06 Javascript
node.js中的http.response.removeHeader方法使用说明
2014/12/14 Javascript
jQuery实现鼠标滑过Div层背景变颜色的方法
2015/02/17 Javascript
深入理解JavaScript系列(47):对象创建模式(上篇)
2015/03/04 Javascript
JavaScript更改原始对象valueOf的方法
2015/03/19 Javascript
javascript实现禁止复制网页内容汇总
2015/12/30 Javascript
非常漂亮的相册集 使用jquery制作相册集
2016/04/28 Javascript
AngularJS实现星星等级评分功能
2016/09/24 Javascript
微信小程序 开发MAP(地图)实例详解
2017/06/27 Javascript
解决JS外部文件中文注释出现乱码问题
2017/07/09 Javascript
基于Vue开发数字输入框组件
2017/12/19 Javascript
详解react-redux插件入门
2018/04/19 Javascript
JavaScript惰性载入函数实例分析
2019/03/27 Javascript
vue-cli 项目打包完成后运行文件路径报错问题
2019/07/19 Javascript
react中hook介绍以及使用教程
2020/12/11 Javascript
python实现搜索本地文件信息写入文件的方法
2016/02/22 Python
python绘制条形图方法代码详解
2017/12/19 Python
Django网络框架之HelloDjango项目创建教程
2019/06/06 Python
django 配置阿里云OSS存储media文件的例子
2019/08/20 Python
python-OpenCV 实现将数组转换成灰度图和彩图
2020/01/09 Python
HTML5 Blob对象的具体使用
2020/05/22 HTML / CSS
Fossil德国官网:化石手表、手袋、珠宝及配件
2019/12/07 全球购物
捷克家电和家具购物网站:OKAY.cz
2020/07/23 全球购物
春节联欢晚会主持词
2014/03/24 职场文书
护士自我鉴定总结
2014/03/24 职场文书
人事任命书怎么写
2014/06/05 职场文书
计算机网络及管理学专业求职信
2014/06/05 职场文书
意外伤害赔偿协议书范文
2014/09/23 职场文书
教师个人自我剖析材料
2014/09/29 职场文书
领导班子四风问题个人对照检查材料
2014/10/04 职场文书
四风查摆剖析材料
2014/10/10 职场文书