如何删除多级目录


Posted in PHP onOctober 09, 2006

昨天看见一个贴子(chinaasp)问怎么删除目录,以前一直可以,但昨天出了问题,原来他只是把他下级的文件删了后就删

目录所以如果多几级就有问题。

我的这个只能暂时凑活着用,如果你的目录没有十几层的话应该没有问题的吧~,但我不熟悉递归只能做到

deltree($path);rmdir($path)才能删除这个目录能不能做到直接deltree($path);就删除这个目录??

function deltree($pathdir)
{
echo $pathdir;//我调试时用的

if(is_empty_dir($pathdir))//如果是空的
    {
    rmdir($pathdir);//直接删除
    }
    else
    {//否则读这个目录,除了.和..外
        $d=dir($pathdir);
        while($a=$d->read())
        {
        if(is_file($pathdir.'/'.$a) && ($a!='.') && ($a!='..')){unlink($pathdir.'/'.$a);}
        //如果是文件就直接删除
        if(is_dir($pathdir.'/'.$a) && ($a!='.') && ($a!='..'))
        {//如果是目录
            if(!is_empty_dir($pathdir.'/'.$a))//是否为空
            {//如果不是,调用自身,不过是原来的路径+他下级的目录名
            deltree($pathdir.'/'.$a);
            }
            if(is_empty_dir($pathdir.'/'.$a))
            {//如果是空就直接删除
            rmdir($pathdir.'/'.$a);
            }
        }
        }
        $d->close();

    echo "必须先删除目录下的所有文件";//我调试时用的

    }

}

function is_empty_dir($pathdir)
{//判断目录是否为空,我的方法不是很好吧?只是看除了.和..之外有其他东西不是为空,PHP有没有给出什么

函数?
$d=opendir($pathdir);
$i=0;
    while($a=readdir($d))
    {
    $i++;
    }
closedir($d);
if($i>2){return false;}
else return true;
}  

PHP 相关文章推荐
Discuz板块横排显示图片的实现方法
May 28 PHP
php 无极分类(递归)实现代码
Jan 05 PHP
PHP取整数函数常用的四种方法小结
Jul 05 PHP
浅谈web上存漏洞及原理分析、防范方法(文件名检测漏洞)
Jun 29 PHP
PHP变量内存分配问题记录整理
Nov 27 PHP
php实现session自定义会话处理器的方法
Jan 27 PHP
学习PHP session的传递方式
Jun 15 PHP
Yii使用DeleteAll连表删除出现报错问题的解决方法
Jul 14 PHP
PHP用FTP类上传文件视频等的简单实现方法
Sep 23 PHP
PHP编译configure时常见错误的总结
Aug 17 PHP
PHP实现的多维数组去重操作示例
Jul 21 PHP
PHP实现微信小程序用户授权的工具类示例
Mar 05 PHP
用PHP实现多级树型菜单
Oct 09 #PHP
PHP4在Windows2000下的安装
Oct 09 #PHP
模仿OSO的论坛(五)
Oct 09 #PHP
基于mysql的论坛(2)
Oct 09 #PHP
基于mysql的论坛(1)
Oct 09 #PHP
基于mysql的论坛(4)
Oct 09 #PHP
基于mysql的论坛(5)
Oct 09 #PHP
You might like
php中foreach结合curl实现多线程的方法分析
2016/09/22 PHP
php array_map使用自定义的函数处理数组中的每个值
2016/10/26 PHP
PHP处理Ajax请求与Ajax跨域问题
2017/02/13 PHP
php爬取天猫和淘宝商品数据
2018/02/23 PHP
在html页面中包含共享页面的方法
2008/10/24 Javascript
JavaScript.The.Good.Parts阅读笔记(一)假值与===运算符
2010/11/16 Javascript
javascript 图片裁剪技巧解读
2012/11/15 Javascript
js写的方法实现上传图片之后查看大图
2014/03/05 Javascript
node.js开发中使用Node Supervisor实现监测文件修改并自动重启应用
2014/11/04 Javascript
js实现鼠标感应图片展示的方法
2015/02/27 Javascript
JavaScript使用shift方法移除素组第一个元素实例分析
2015/04/06 Javascript
javascript中undefined与null的区别
2015/08/16 Javascript
jQuery实现的手机发送验证码倒计时效果代码分享
2015/08/24 Javascript
理解javascript中Map代替循环
2016/02/26 Javascript
JS动态加载脚本并执行回调操作
2016/08/24 Javascript
用iframe实现不刷新整个页面上传图片的实例
2016/11/18 Javascript
详谈表单重复提交的三种情况及解决方法
2017/08/16 Javascript
React降级配置及Ant Design配置详解
2018/12/27 Javascript
Javascript的this详解
2019/03/23 Javascript
Angular 2使用路由自定义弹出组件toast操作示例
2019/05/10 Javascript
Python lambda和Python def区别分析
2014/11/30 Python
python pandas 组内排序、单组排序、标号的实例
2018/04/12 Python
pytorch对梯度进行可视化进行梯度检查教程
2020/02/04 Python
Python连接HDFS实现文件上传下载及Pandas转换文本文件到CSV操作
2020/06/06 Python
pycharm2020.2 配置使用的方法详解
2020/09/16 Python
如何唤起类中的一个方法
2013/11/29 面试题
高中毕业的自我鉴定
2013/12/09 职场文书
秦兵马俑教学反思
2014/02/07 职场文书
公关活动策划方案
2014/05/25 职场文书
公司领导班子召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
优秀英文求职信范文
2015/03/19 职场文书
社区文明倡议书
2015/04/28 职场文书
小英雄雨来观后感
2015/06/09 职场文书
银行柜员优质服务心得体会
2016/01/22 职场文书
Django使用echarts进行可视化展示的实践
2021/06/10 Python
Python 操作pdf pdfplumber读取PDF写入Exce
2022/08/14 Python