欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php怎么删除非空文件夹

程序员文章站 2022-03-03 15:29:25
...

php删除非空文件夹的方法:首先创建一个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