欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP删除非空目录的函数代码小结

程序员文章站 2023-02-23 14:28:27
有了这个小程序,phper就不用手动进行删除计算机上的目录文件了,在练习php目录文件操作时就可以用这个函数,在这个基础上还可以增加浏览文件夹目录,然后进行删除。代码一:复...
有了这个小程序,phper就不用手动进行删除计算机上的目录文件了,在练习php目录文件操作时就可以用这个函数,在这个基础上还可以增加浏览文件夹目录,然后进行删除。

代码一:
复制代码 代码如下:

<?php
function d_rmdir($dirname) {   //删除非空目录
if(!is_dir($dirname)) {
return false;
}
$handle = @opendir($dirname);
while(($file = @readdir($handle)) !== false){
if($file != '.' && $file != '..'){
$dir = $dirname . '/' . $file;
is_dir($dir) ? d_rmdir($dir) : unlink($dir);
}
}
closedir($handle);
return rmdir($dirname) ;
}
if(d_rmdir("./temp"))
 echo "succes";
else
 echo "false";
?>


第二个是从手册中翻出来的:)

代码二:
复制代码 代码如下:

<?php
 
functionremove_directory($dir){
 if($handle=opendir("$dir")){
 while(false!==($item=readdir($handle))){
  if($item!="."&&$item!=".."){
   if(is_dir("$dir/$item")){
    remove_directory("$dir/$item");
   }else{
    unlink("$dir/$item");
    echo"removing$dir/$item<br> ";
   }
  }
 }
 closedir($handle);
 rmdir($dir);
 echo"removing$dir<br> ";
 }
}

第三个是codebit.cn上面收集的,还是手册里的好

代码三:

复制代码 代码如下:

functionremovedir($dirname)
{
  if(!is_dir($dirname))
  {
    returnfalse;
  }
  $handle=@opendir($dirname);
  while(($file=@readdir($handle))!==false)
  {
    if($file!='.'&&$file!='..')
    {
      $dir=$dirname.'/'.$file;
      is_dir($dir)?removedir($dir):@unlink($dir);
    }
  }
  closedir($handle);  
  returnrmdir($dirname);
}
?>