PHP在服务器上取消链接(删除)多个文件

时间:2014-03-12 14:48:56

标签: php unlink

有时,我必须删除服务器上不同文件夹中的多个文件。通过FTP逐一完成这项工作是一项繁琐的工作。我写了一个小脚本来完成这项工作。我可以在Excel中导入文件列表并将其复制并粘贴到脚本中。但是,我的做法并不优雅:

$file1 = "some-file.php";
$file12 = "some-file2.php";

...

if (!empty($file1)) {
if ( @unlink ( $_SERVER[DOCUMENT_ROOT]."/".$file1 ) )
{
  echo 'The file <strong><span style="color:green;">' . $file1 . '</span></strong> was deleted!<br />';
}
else
{
  echo 'Couldn't delete the file <strong><span style="color:red;">' . $file1 . '</span></strong>!<br />';
}}
if (!empty($file2)) { ...

我更愿意用foreach和数组来做这件事,但不知道如何做。任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:3)

只需将文件放入数组并循环播放即可。

$files = array('some-file.php', 'some-file2.php');

foreach ($files as $file) {
  if ( @unlink ( $_SERVER[DOCUMENT_ROOT]."/".$file ) ) {
    echo 'The file <strong><span style="color:green;">' . $file . '</span></strong> was deleted!<br />';
  } else {
    echo 'Couldn\'t delete the file <strong><span style="color:red;">' . $file . '</span></strong>!<br />';
  }
}

答案 1 :(得分:0)

另外,我认为如果你使用file_exists()

会更好
if (file_exists($file1)) 
{
unlink ( $_SERVER[DOCUMENT_ROOT]."/".$file1 );
clearstatcache();
}