我正在使用此代码删除文件夹中的所有文件,并且工作正常:
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
完成操作,以便删除目录中的每个文件。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句