PHP:取消链接目录中的所有文件,然后删除该目录

标签 php unlink rmdir

有没有一种方法可以使用 RegExp 或通配符搜索来快速删除文件夹中的所有文件,然后在 PHP 中删除该文件夹,而无需使用“exec”命令?我的服务器未授权我使用该命令。某种简单的循环就足够了。

我需要一些东西来完成以下语句背后的逻辑,但显然是有效的:


$dir = "/home/dir"
unlink($dir . "/*"); # "*" being a match for all strings
rmdir($dir);

最佳答案

使用 glob查找与某个模式匹配的所有文件。

function recursiveRemoveDirectory($directory)
{
    foreach(glob("{$directory}/*") as $file)
    {
        if(is_dir($file)) { 
            recursiveRemoveDirectory($file);
        } else {
            unlink($file);
        }
    }
    rmdir($directory);
}

关于PHP:取消链接目录中的所有文件,然后删除该目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11267086/

相关文章:

php - 如何在 Laravel 4 中创建 Hstore 列类型?

linux - 删除 Linux 程序集 x86 中的文件夹中的所有文件,包括自身

inheritance - Odoo 覆盖继承的方法

php - 删除 FTP 连接上的文件夹和所有文件

php - 删除文件然后目录

php - 在 PHP 中将数组复制到另一个数组

php - Laravel 嵌套急切加载

PHP fopen() : Filename cannot be empty cause by getRealPath return false

unix - unlink 和 rm 在 unix 上的区别

Windows 相当于 rm -rf [不想删除父目录]