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

时间:2022-08-24 14:30:07

有了这个小程序,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);
}
?>