php递归删除目录"

简介:
要删除一个空的目录很简单~一个
 
rmdir() 函数就可以搞定,但是要删除一个非空目录,将不能进行快速的删除,必须先将目录中文件删除,但是目录里可能还会有子目录所以要进行递归删除~下面是我的例子~
 
<?php
function deletedir($dir){
      if( !handle=@opendir($dir)){     //检测要打开目录是否存在
               die("没有该目录");
      }
     while(false !==($file=readdir($handle))){
               if($file!=="."&&$file!==".."){       //排除当前目录与父级目录
                            $file=$dir .DIRECTORY_SEPARATOR. $file;
                            if(is_dir($file)){
                                  deletedir($file);
                            }else{
                                  if(@unlink($file)){
                                         echo "文件<b>$file</b>删除成功。<br>";
                                  }else{
                                          echo  "文件<b>$file</b>删除失败!<br>";
                                 }
                }
     }
    if(@rmdir($dir)){
           echo "目录<b>$dir</b>删除成功了。<br>\n";
    }else{
           echo "目录<b>$dir</b>删除失败!<br>\n";
  }
}
 
//测试程序
$dir="/var/www/test";
deletedir($dir);
?>
 
在 /var/www/test 文件夹下建一写 文件夹和文件测试
shell> touch  aaa
shell> touch  bbb
shell> touch  ccc
shell> touch  eee
shell> touch  ffff
shell> mkdir   111
shell> mkdir   222
shell> mkdir   333
分别再在111,222,333  文件夹下建写文件这里就不多说了,然后给他们权限
shell>chown  [url]www.www[/url] test -R
然后在IE 打开程序测试吧~~呵呵。
 

本文转自Deidara 51CTO博客,原文链接:http://blog.51cto.com/deidara/118805,如需转载请自行联系原作者
相关文章
php案例:用代码的方式创建目录+文件+写入数据(都由你定)
php案例:用代码的方式创建目录+文件+写入数据(都由你定)
php案例:用代码的方式创建目录+文件+写入数据(都由你定)
|
9月前
|
PHP
php开发实战分析(4):php调用封装函数包含文件路径自适应不同目录的解决方案($_SERVER[‘DOCUMENT_ROOT‘]与__DIR__魔术常量)
php开发实战分析(4):php调用封装函数包含文件路径自适应不同目录的解决方案($_SERVER[‘DOCUMENT_ROOT‘]与__DIR__魔术常量)
128 0
|
4月前
|
算法 小程序 PHP
PHP实现递归排序
在leetcode练习算法的时候,发现一个算法需要用到递归。 递归是个好东西,但是吧,一般不理解其精髓的,很难写出一个好的递归。 递归其实就是函数本身直接或者间接地调用自身的一种编程方法(我自己调用我自己~),也可以理解为有反复执行过程的一种方法,这个就与循环非常相似,但是递归调用的函数中必须要有终止条件,也就是一定
28 1
|
8月前
|
关系型数据库 MySQL PHP
PHP注册、登陆、6套主页-带Thinkphp目录解析-【白嫖项目】
PHP注册、登陆、6套主页-带Thinkphp目录解析-【白嫖项目】 CSDN 转过来的,所以格式与内容有些许错误请见谅