• PHP文件目录操作之-删除空目录
  • 发布于 2个月前
  • 200 热度
    0 评论
  • 林俪芳
  • 5 粉丝 40 篇博客
  •   
 步骤:
1.遍历目录及子目录
2.使用 scandir 判断目录是否为空,为空则使用rmdir 删除。

  1. <?php    
  2. /** 删除所有空目录  
  3. * @param String $path 目录路径  
  4. */    
  5. function rm_empty_dir($path){    
  6.     if(is_dir($path) && ($handle = opendir($path))!==false){    
  7.         while(($file=readdir($handle))!==false){     // 遍历文件夹    
  8.             if($file!='.' && $file!='..'){    
  9.                 $curfile = $path.'/'.$file;          // 当前目录    
  10.                 if(is_dir($curfile)){                // 目录    
  11.                     rm_empty_dir($curfile);          // 如果是目录则继续遍历    
  12.                     if(count(scandir($curfile))==2){ // 目录为空,=2是因为. 和 ..存在    
  13.                         rmdir($curfile);             // 删除空目录    
  14.                     }    
  15.                 }    
  16.             }    
  17.         }    
  18.         closedir($handle);    
  19.     }    
  20. }    
  21. $folder = '目标文件夹';    
  22. rm_empty_dir($folder);    
  23. ?>    
使用 shell 则简单很多:

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

用户评论