gongzhonghao.png
扫码关注我们
最新赞助活动温馨提示:自愿赞助服务器费用,学生和没有工作的整站资源免费下载!
头像

php 下几种删除目录的方法汇集总结教程

来源:http://erdangjiade.com/topic/1503.html 你好,世界。 2017-09-25 22:42浏览(20)

本篇文章主要介绍几种在PHP下删除目录的方法,具体如下

1。递规法

deleteDir($dir) 
{ 
 if (rmdir($dir)==false && is_dir($dir)) { 
  if ($dp = opendir($dir)) { 
   while (($file=readdir($dp)) != false) { 
    if (is_dir($file) && $file!='.' && $file!='..') { 
     deleteDir($file); 
    } else { 
     unlink($file); 
    } 
   } 
   closedir($dp); 
  } else { 
   exit('Not permission'); 
  } 
 }  
}

2。系统调用法

function del_dir($dir) 
{ 
 if(strtoupper(substr(PHP_OS, 0, 3)) == 'WIN') { 
     $str = "rmdir /s/q " . $dir; 
 } else { 
     $str = "rm -Rf " . $dir; 
 } 
}

3。循环法

function deltree($pathdir)  
{  
echo $pathdir;//我调试时用的  

if(is_empty_dir($pathdir))//如果是空的  
    {  
    rmdir($pathdir);//直接删除  
    }  
    else  
    {//否则读这个目录,除了.和..外  
        $d=dir($pathdir);  
        while($a=$d->read())  
        {  
        if(is_file($pathdir.'/'.$a) && ($a!='.') && ($a!='..')){unlink($pathdir.'/'.$a);}  
        //如果是文件就直接删除  
        if(is_dir($pathdir.'/'.$a) && ($a!='.') && ($a!='..'))  
        {//如果是目录  
            if(!is_empty_dir($pathdir.'/'.$a))//是否为空  
            {//如果不是,调用自身,不过是原来的路径+他下级的目录名  
            deltree($pathdir.'/'.$a);  
            }  
            if(is_empty_dir($pathdir.'/'.$a))  
            {//如果是空就直接删除  
            rmdir($pathdir.'/'.$a);  
            }  
        }  
        }  
        $d->close();  

    echo "必须先删除目录下的所有文件";//我调试时用的  

    }  
}  

function is_empty_dir($pathdir)  
{ 

//判断目录是否为空,我的方法不是很好吧?只是看除了.和..之外有其他东西不是为空 
$d=opendir($pathdir);  
$i=0;  
    while($a=readdir($d))  
    {  
    $i++;  
    }  
closedir($d);  
if($i>2){return false;}  
else return true;  

}

以上就是php 下几种删除目录的方法汇总的详细内容,更多请关注二当家的素材网其它相关文章!

评论0
头像

友情提示:垃圾评论一律封号 加我微信:826096331拉你进VIP群学习群

1 2