【问题标题】:Delete files from multiple folders从多个文件夹中删除文件
【发布时间】:2015-01-12 06:20:23
【问题描述】:

我有一个简单的 PHP 脚本,可以从一个文件夹中删除文件,它看起来像这样:

$files = glob('all/*'); 
foreach($files as $file){ 
if(is_file($file))
unlink($file); 

我还有另外两个文件夹“添加”和“旧”,我也想删除这些文件夹中的文件,我该怎么做?

我试过了

$files = glob('all/*,added/*,old/*'); 

还有这个

$files = glob('all/*','added/*','old/*');

但它不起作用。

【问题讨论】:

标签: php syntax


【解决方案1】:
$arr = array('all/*','added/*','old/*');
foreach ($arr as $a) {
$files = glob($a); 
foreach($files as $file){ 
if(is_file($file))
unlink($file); 
}
}

也可以在这里找到更直接的方法PHP Regex specify multiple paths using glob()

【讨论】:

  • 尽管尝试 GLOB_BRACE 以获取更直接的方法,如我的答案中的链接示例。
【解决方案2】:

试试这个:

$folders = [ 'all/*', 'added/*', 'old/*' ];

foreach($folders as $folder) {
    $files = glob($folder); 
    foreach($files as $file){ 
        if(is_file($file)) {
            unlink($file);
        }
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多