2016-12-02 103 views
0

如何删除了服务器上的PHP脚本中的所有文件?我的问题是我有很多需要删除的文件,而且通过FTP客户端需要相当长的时间。删除所有文件与PHP脚本

+0

使用'水珠()'让所有匹配的通配符模式的文件的数组,然后遍历它们调用'的unlink()'。有什么问题? – Barmar

+1

你可以编辑这个来添加一个更具体的问题描述吗?您想要删除的文件与PHP脚本相关的位置在哪里?他们在同一台服务器上吗? –

+0

数据通过InternetProvider存储在服务器上。我安装了一个商店系统,并生成了超过45000个文件。现在我想删除所有数据。使用FileZilla只需要很长时间。这就是为什么我正在寻找一个PHP脚本,其中服务器直接接管工作。我期望速度优势。 – Syntax6

回答

2

您可以使用循环删除所有文件,例如: `

$files = glob('path/to/temp/*'); // get all file names 
foreach($files as $file){ // iterate files 
    if(is_file($file)) 
    unlink($file); // delete file 
} 

`

0

未经测试,但是这应该工作:

$dir = "dir/to/purge/"; // Directory you want to remove all the files from 
$listing = scandir($dir); // Array containing all files and directories inside the provided directory 

foreach($listing as $file) { 
    if(is_file($dir . $file)) { 
    unlink($dir . $file); // Removes the file from the listing 
    } 
} 

注意,有很多文件如此可能会耗尽你所有的记忆。

+0

我认为它实际上应该可能的复制工作,但事实并非如此。我已经从您的代码中创建了一个PHP文件并将其上传到服务器。然后我用浏览器调用该文件。对不起,该目录尚未删除。我认为我犯了一个错误。 – Syntax6

+1

*“这也会删除目录”* - 'unlink()只能删除文件,而不是文件夹。 'rmdir()'删除文件夹,但前提是它们是空的。 –

+0

弗雷德有道理,没有想到这一点。在那种情况下,无论如何都应该使用后者。如果您使用的第一个版本也可能是您的问题的原因,@语法6。尝试另一个或使用其他答案在这个问题上。我正在编辑我的答案,现在删除第一个。 – bugfroggy