php 递归删除文件夹

Posted 似梦似醒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 递归删除文件夹相关的知识,希望对你有一定的参考价值。

因为php 的rmdir 只能删除空文件夹。

一旦要删除有文件的文件夹,就需要先把文件夹里的文件删除掉。

当然了,还有文件夹里的文件夹,下面还有文件夹。。。。怎么办呢。

递归删除法,完美解决这个问题。上代码

function rmfile($dir){   
    if(!file_exists($dir)) echo  "文件不存在!";
    
        if ($file_dir = opendir($dir)) {
            while (($sun_file=readdir($file_dir)) != false) {
                if ($sun_file !==‘.‘ && $sun_file !==‘..‘) {
                    if(is_dir("$dir/$sun_file")){
                        rmfile("$dir/$sun_file");
                    } else {
                        unlink("$dir/$sun_file");
                    }
                }
            }
        }
        closedir($file_dir);
        rmdir($dir);
}

 rmfile("./dir");

 

这是我自己编写的,还有一个别人写的,原理是一样的。也可以参考。最好自己写一遍。

http://blog.csdn.net/wuxiaopeng_1986/article/details/52956870

以上是关于php 递归删除文件夹的主要内容,如果未能解决你的问题,请参考以下文章

PHP 使用php删除递归特定文件夹(目录)

php 递归删除文件夹

PHP 文件夹操作「复制删除查看大小」迭代实现

php递归删除文件夹

PHP的递归删除目录功能?

PHP递归删除目录