首页 >后端开发 >PHP问题 > 正文

php怎么删除非空文件夹

原创2021-03-03 09:15:2201199

php删除非空文件夹的方法:首先创建一个PHP示例文件;然后检查目录下有没有文件或文件夹;最后用递归删除目录下的所有文件和文件夹即可。

本文操作环境:windows7系统、PHP7.1版,DELL G3电脑。

PHP删除非空目录/文件夹

用 PHP 自带的文件系统函数 rmdir() 删除目录时往往会遇到一个问题,那就是要删除的这个目录必须为空,否则会报错。

删除非空目录,先检查目录下有没有文件或文件夹,如果有,就用递归删除目录下的所有文件和文件夹,然后删除此目录。

具体操作如下:

1、函数定义

function deldir($dir) {
    $dh=opendir($dir);
    while ($file=readdir($dh)) {
        if($file!="." && $file!="..") {
            $fullpath=$dir."/".$file;
            if(!is_dir($fullpath)) {
                unlink($fullpath);
            } else {
                deldir($fullpath);
            }
        }
    }
    closedir($dh);
    if(rmdir($dir)) {
        return true;
    } else {
        return false;
    }
}

2、删除目录

function doDel(){
    $dir="./src/folder";
    if(deldir($dir)){
        echo("删除成功");
    }else{
        echo("删除失败");
    }
}

原理说明:

先检查此目录下是否有文件,如果有,是文件夹的话就再调用此函数删除,如果是文件就直接调用 unlink 删除,最后删除此目录。

注意事项:

确保有对文件夹的操作权限

【推荐:PHP视频教程

以上就是php怎么删除非空文件夹的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:php
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    推荐视频教程
  • PHP面向对象编程(玉女心经版)PHP面向对象编程(玉女心经版)
  • Mac PHP开发工具与环境搭建Mac PHP开发工具与环境搭建
  • ThinkPHP5.1开发基础ThinkPHP5.1开发基础
  • PHP安全与漏洞PHP安全与漏洞
  • PHP开发基础之数组篇PHP开发基础之数组篇
  • 视频教程分类