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

yipeiwu_com5年前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中反射的应用

反射是在PHP运行状态中,扩展分析PHP程序,导出或提取出关于类、方法、属性、参数等的详细信息,包括注释。这种动态获取的信息以及动态调用对象的方法的功能称为反射API。反射是操纵面向对象...

一道求$b相对于$a的相对路径的php代码

php面试题的题目: $a = '/a/b/c/d/e.php'; $b = '/a/b/12/34/c.php'; //计算出 $b 相对于 $a 的相对路径应该是 ../../c/d...

PHP简单读取PDF页数的实现方法

本文实例讲述了PHP简单读取PDF页数的实现方法。分享给大家供大家参考,具体如下: 还是老外比较厚道, 在老外的网站找到了这样一个方法, 我写成了一个函数, 再将函数写进自己的LeeLi...

PHP实现一维数组与二维数组去重功能示例

本文实例讲述了PHP实现一维数组与二维数组去重功能。分享给大家供大家参考,具体如下: 数组中重复项的去除 一维数组的重复项: 使用array_unique函数即可,使用实例如下: &...

详解PHP中array_rand函数的使用方法

前言 array_rand() 函数从数组中随机选出一个或多个元素,并返回。从一个数组中随机取出n个值,用array_rand()可以轻易的实现,当面对大数组的时候,我们会担心他的效率、...