如何删除多级目录

需要有用的窗口

需要有用的窗口

2016-01-29 14:49

如何删除多级目录,如何删除多级目录
  昨天看见一个贴子(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($i2){return false;}
else return true;
}  

 
展开更多 50%)
分享

猜你喜欢

如何删除多级目录

PHP
如何删除多级目录

Foxmail如何自定义多级邮箱

电脑网络
Foxmail如何自定义多级邮箱

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

删除无限级目录与文件代码共享

Web开发
删除无限级目录与文件代码共享

360驱动大师目录在哪里 360驱动大师目录删除方法

软件教程
360驱动大师目录在哪里 360驱动大师目录删除方法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

WPS2024中怎么制作目录如何自动生成目录并指定目录级别

计算机应用技术
WPS2024中怎么制作目录如何自动生成目录并指定目录级别

Win8如何删除MSI临时解压目录并压缩Installer文件夹

windows系统
Win8如何删除MSI临时解压目录并压缩Installer文件夹

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

利用递归把多维数组转为一维数组的函数

利用递归把多维数组转为一维数组的函数

《新世界树迷宫2》全防具详细获取方式一览

《新世界树迷宫2》全防具详细获取方式一览
下拉加载更多内容 ↓