Heim >Backend-Entwicklung >PHP-Tutorial >PHP删除非空目录的三个函数

PHP删除非空目录的三个函数

WBOY
WBOYOriginal
2016-07-25 08:55:43871Durchsuche
  1. function d_rmdir($dirname) { //删除非空目录
  2. if(!is_dir($dirname)) {
  3. return false;
  4. } // bbs.it-home.org
  5. $handle = @opendir($dirname);
  6. while(($file = @readdir($handle)) !== false){
  7. if($file != '.' && $file != '..'){
  8. $dir = $dirname . '/' . $file;
  9. is_dir($dir) ? d_rmdir($dir) : unlink($dir);
  10. }
  11. }
  12. closedir($handle);
  13. return rmdir($dirname) ;
  14. }
  15. if(d_rmdir("./temp"))
  16. echo "succes";
  17. else
  18. echo "false";
  19. ?>
复制代码

方法二,php手册上找到的。

  1. //删除非空目录 
  2. functionremove_directory($dir){
  3.  if($handle=opendir("$dir")){
  4.  while(false!==($item=readdir($handle))){
  5.   if($item!="."&&$item!=".."){
  6.    if(is_dir("$dir/$item")){
  7.     remove_directory("$dir/$item");
  8.    }else{
  9.     unlink("$dir/$item");
  10.     echo"removing$dir/$item
    ";
  11.    }
  12.   }
  13.  }
  14.  closedir($handle);
  15.  rmdir($dir);
  16.  echo"removing$dir
    ";
  17.  }
  18. }
复制代码

方法三,

  1. //网友提供的删除非空目录的函数
  2. functionremoveDir($dirName)
  3. {
  4.   if(!is_dir($dirName))
  5.   {
  6.     returnfalse;
  7.   }
  8.   $handle=@opendir($dirName);
  9.   while(($file=@readdir($handle))!==false)
  10.   {
  11.     if($file!='.'&&$file!='..')
  12.     {
  13.       $dir=$dirName.'/'.$file;
  14.       is_dir($dir)?removeDir($dir):@unlink($dir);
  15.     }
  16.   }
  17.   closedir($handle);  
  18.   returnrmdir($dirName);
  19. }
  20. ?>
复制代码


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn