一定要注意文件夹中的两个目录----> .(当前目录) ..(上级目录) 需要对这两个目录进行过滤,
否则在删除或者遍历是会一直,对于..甚至会向你指定的文件夹的上级目录循环操作,删除重要文件
function dealFileInDir($path,$type=false){ ???if(is_dir($path)){ ???????if($dp=opendir($path)){ ???????????while (false!==($item=readdir($dp))){ ???????????????//直接过滤或者在下面目录判断时,排除掉 ???????????????if($item==‘.‘||$item==‘..‘) ???????????????????continue; ???????????????$info=$path.‘/‘.$item; ???????????????if(is_dir($info)&&$item!=‘.‘&&$item!=‘..‘){ ???????????????????dealFileInDir($info); ???????????????}else{ ???????????????????//print $info.‘<br/>‘; ???????????????????@unlink($info); ???????????????} ???????????} ???????????closedir($dp); ???????} ???????if($type) ???????????@rmdir($path); ???}}
php循环删除文件夹和目录
原文地址:https://www.cnblogs.com/ssyfj/p/8495985.html