【发布时间】:2017-01-17 19:30:28
【问题描述】:
我有问题。
我在互联网上搜索了一个解决方案,但没有一个效果很好。我正在尝试制作一个脚本,该脚本将从文件夹中获取文件并将它们放入 zip 存档中。 但它不起作用..
我尝试了不同的路径,但只有我自己搞混了,什么都没有。
这是我认为最简单的当前代码,应该可以工作,但不这样做..
你能帮帮我吗?
function archivebackup(){
$zip = new ZipArchive;
if ($zip->open('Mail.zip', ZipArchive::CREATE) === TRUE){
foreach (new DirectoryIterator('Mails/') as $fileInfo) {
$fileName = $fileInfo->getFilename();
// echo $fileName ."<br>";
$zip->addFile($fileName);
}
$zip->close();
}
}
【问题讨论】:
-
您收到了哪些错误消息?它在什么方面不起作用?
-
第一个也是显而易见的问题,您是否在 PHP 中启用了 zip 支持?
-
我没有错误。该脚本不会向存档添加任何内容。而且我知道程序会检索文件的名称。
-
鉴于您将
Mails/传递给您的DirectoryIterator构造函数,您可能还需要在文件名前加上该路径。$zip->addFile('Mails/'.$fileName); -
我没有在 php.ini 中启用任何东西。但我不知道我必须这样做。如果我给出示例“addFile(”1.txt)”,则此代码有效。但是,当我想在循环中执行所有操作时,它不起作用。