文章详情

短信预约信息系统项目管理师 报名、考试、查分时间动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

php rmdir()怎么删除非空目录

2018-10-18 02:50

关注

本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑

在 PHP 中可以使用 rmdir() 函数来删除指定的目录,该函数的语法格式如下所示:

rmdir(string $dirname[, resource $context])

其中,参数 $dirname 为要删除的目录路径;$context 为可选参数,用来规定文件句柄的环境。

注意:使用 rmdir() 函数删除指定目录时,这个目录必须是空的,而且要有相应的权限。函数执行成功时返回 TRUE,执行失败则返回 FALSE,如果删除一个不为空的目录还会产生一个 E_WERNING 级别的错误。

那么如果需要使用rmdir()删除一个非空目录,这要怎么做?

我们可以遍历这个目录下的所有文件和文件夹,并用递归的方式来逐个删除这个目录下的所有文件和文件夹,下面就通过示例代码来演示以下:

<?php
    function deldir($path){
        //如果是目录则继续
        if(is_dir($path)){
            //扫描一个文件夹内的所有文件夹和文件并返回数组
            $p = scandir($path);
            //如果 $p 中有两个以上的元素则说明当前 $path 不为空
            if(count($p)>2){
                foreach($p as $val){
                    //排除目录中的.和..
                    if($val !="." && $val !=".."){
                        //如果是目录则递归子目录,继续操作
                        if(is_dir($path.$val)){
                            //子目录中操作删除文件夹和文件
                            deldir($path.$val.'/');
                        }else{
                            //如果是文件直接删除
                            unlink($path.$val);
                        }
                    }
                }
            }
        }
        //删除目录
        return rmdir($path);
    }
    //设置需要删除的文件夹
    $path = "./test/";
    //调用函数,传入路径
    deldir($path);
?>

说明:

scandir() 函数返回包含指定目录中所有文件和目录的数组,

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯