php删除指定目录下面的所有空的后代目录
求代码 求私思路
------解决方案--------------------
思路就是遍历,然后判断文件数量和文件夹数量为空,则删除。
用shell就简单了
find 目录 -mindepth 1 -depth -empty -type d -exec rm -r {} \;
用php就复杂了
function rmEmptyDir($spath){
if($handle = opendir($spath)){
while(($file=readdir($handle))!==false){
if($file!='.' && $file!='..'){
$curfile = $spath.'/'.$file;
if(is_dir($curfile)){ // dir
rmEmptyDir($curfile);
if(count(scandir($curfile))==2){ // 空目錄
rmdir($curfile);
}
}
}
}
closedir($handle);
}
}
$folder = '目標文件夾';
rmEmptyDir($folder);