PHP下用rmdir实现删除目录的三种方法小结

2015-01-24信息快讯网
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;    
}   

mysql From_unixtime及UNIX_TIMESTAMP及DATE_FORMAT日期函数
php Smarty date_format [格式化时间日期]
libmysql.dll与php.ini是否真的要拷贝到c:\windows目录下呢
PHP 创建文件(文件夹)以及目录操作代码
php is_file()和is_dir()用于遍历目录时用法注意事项
php 用checkbox一次性删除多条记录的方法
Search File Contents PHP 搜索目录文本内容的代码
PHP+ajax 无刷新删除数据
php实现的遍历文件夹下所有文件,编辑删除
PHP 获取目录下的图片并随机显示的代码
php遍历目录viewDir函数
PHP 配置open_basedir 让各虚拟站点独立运行
PHP 批量删除数据的方法分析
php download.php实现代码 跳转到下载文件(response.redirect)
php 文件夹删除、php清除缓存程序
PHP 配置文件中open_basedir选项作用
PHP form 表单传参明细研究
PHP setcookie() cannot modify header information 的解决方法
Cannot modify header information错误解决方法
Gregarius中文日期格式问题解决办法
Mysql中limit的用法方法详解与注意事项
php出现Cannot modify header information问题的解决方法大全
php模板之Phpbean的目录结构
PHP读取目录下所有文件的代码
PHP下几种删除目录的方法总结
ASP和PHP都是可以删除自身的
php中目录,文件操作详谈
PHP 中dirname(_file_)讲解
Smarty+QUICKFORM小小演示
一键删除顽固的空文件夹 软件下载
php批量删除数据
目录,文件操作详谈―PHP
一个可以删除字符串中HTML标记的PHP函数
用PHP动态生成虚拟现实VRML网页
利用PHP动态生成VRML网页
©2014-2024 dbsqp.com