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

yipeiwu_com6年前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);
}
?>

相关文章

PHP使用DES进行加密与解密的方法详解

DES是一种标准的数据加密算法,关于这个算法的详细介绍可以参考wiki和百度百科: wiki百科    百度百科 php中有一个扩展可以支持DES的加密算法...

30 个很棒的PHP开源CMS内容管理系统小结

30 个很棒的PHP开源CMS内容管理系统小结

1. AdaptCMS AdaptCMS Lite 是一个开源的CMS系统,主要特点是易用,而且可以轻松和其他系统接驳,提供简单的扩展定制途径,一个简单而且功能强大的模板系统...

php中注册器模式类用法实例分析

本文实例讲述了php中注册器模式类用法。分享给大家供大家参考,具体如下: 注册器读写类 Registry.class.php <?php /** * 注册器读写类...

浅谈PHP无限极分类原理

浅谈PHP无限极分类原理

1.递归:程序调用自身的编程技巧称为递归 2.案例: /** * @param 递归 $[name] */ function deeploop(&$i=1){ echo...

解析CI的AJAX分页 另类实现方法

看了一下CI的分页类没有写到关于AJAX的内容,也在论坛上看到其他几位大神写的分页类扩展,感觉其实是没有必要。在现有的基础上做了一下小小的改动还是能实现的。下面进入正题:CI的原生分页类...