添加 zip 不会做任何事情

add zip won't do anything

我正在尝试使用此功能压缩一些文件夹:

public function generate_zip($directory,$name_of_the_folder){
        $rootPath = realpath($directory);
        $zip = new ZipArchive();
        $zip->open('path/to/my/zip/compressed.zip', ZipArchive::CREATE | ZipArchive::OVERWRITE);
        $zip->addFile($rootPath,$name_of_the_folder);
        $zip->close();
    }

这实际上什么也没做。我已经检查过权限,它们似乎是正确的。

根据文档,函数 'addFile' 需要两个文件名:第一个是本地文件的路径(您要将其添加到 zip),第二个(可选)参数是您如何希望文件出现在 zip 中。

您有一个变量“$name_of_the_folder”。是否包含正确的值?

Php.net 文档:http://php.net/manual/en/ziparchive.addfile.php

使用 ZipArchive 时,无法使用 ZipArchive::addFile() 添加空目录。你必须使用 ZipArchive::addEmptyDir() 。 对于你的情况,我认为你想要的是 ZipArchive::addGlob()