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

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

7个月前61浏览0评论

本文实例讲述了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中文网(www.php.cn)其他文章!  


相关标签:PHP
    0推荐

      作者的热门手记