php循环删除文件夹和目录

一定要注意文件夹中的两个目录---->   .(当前目录)  ..(上级目录) 需要对这两个目录进行过滤,

否则在删除或者遍历是会一直,对于..甚至会向你指定的文件夹的上级目录循环操作,删除重要文件

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);
    }
}

 

posted @ 2018-03-03 10:39  山上有风景  阅读(285)  评论(0编辑  收藏  举报