建站部落网 - www.jzbulo.com 首 页业界动态免费空间
建站首页 | 业界动态 | 网页制作 | 网络编程 | 网站运营 | 服务器技术 | 网页特效 | 图形图像 | 计算机技术 | 作品欣赏
您当前的位置:建站部落 > 网络编程 > Php编程 > 文章内容 注册用户 用户管理 退出登录
PHP中删除目录的三种方法
作者:佚名  来源:不详  发布时间:2007-12-7 13:20:25  发布人:jzbulo

减小字体 增大字体

     PHP本身有一个rmdir()函数可以用来删除目录,不过要求必须是空目录,本文列举了三种方法。1、递规法;2、系统调用法;3、循环法 。

      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; 

[] [返回上一页] [打 印] [收 藏]
下一篇文章:Apache设置PHP环境方法
相关文章 赞助商链接
· 写给刚刚踏入网页设计这个世界的你
· DesignUK 设想英伦系列活动之大声展21日在沪..
· 婚恋交友网站盈利模式初探
· CNAP2007国际艺术展在北京酒厂国际艺术园医..
· 德国DFI学院学生获奖作品之一:大众篇(1)
· Xbox Forza Street Racing 平面广告设计
· Jessica Vernick 平面设计
· Kelsey Reckord 平面设计
· PRINT-RUN伦敦防治肺癌慈善海报展欣赏
· [摄影] 水中芙蓉
· [同盟报道]清华美院2007本科毕业展开幕
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图
声明:本站中的内容及图片来均源于互联网,其中演示的技术细节仅用于试验 环境的技术研究以及漏洞的验证。
文章内容不涉及任何有版权的内容,仅供技术交流研究之用。网 站联系QQ:175612638
Copyright © 2002-2006 jzbulo.com. All Rights Reserved . 粤ICP备05040326号