如何在取消链接后使用退出时删除文件夹中的所有带有 PHP 的文件



>我正在使用此代码删除文件夹中的所有文件,并且工作正常:

if(isset($_POST['deleteall'])) {
    $files = glob($dir.'/*'); // get all file names
    foreach($files as $file){ // iterate files
        if(is_file($file)) {
          unlink($file); // delete files                               
        }   
    }     
exit;
}

当我把exit直接放在unlink之后时,如下所示,它不再起作用了。

if(isset($_POST['deleteall'])) {
    $files = glob($dir.'/*'); // get all file names
    foreach($files as $file){ // iterate files
       if(is_file($file)) {
       unlink($file); // delete files
       exit;                               
       }   
    }     
}

有人可以解释为什么必须将出口置于foreach循环之外吗?因为在unlink之后,所有内容都被删除了,您可以放置一个exit,但不幸的是....

你的假设

unlink($file); // delete files
//                ************

是不正确的。 这是一次删除 1 个文件 您需要让foreach完成,以便删除目录中的每个文件。

最新更新