创建一个 zip 和 zip->close() returns false 尽管检查,路径名是正确的

Creating a zip and zip->close() returns false despite checks, path names are correct

我一直在尝试使用 PHP 和 ZipArchive 创建一个 Zip 文件,但是尽管检查我添加的每个文件都是可读、可写且存在的,zip->close() returns 错误的。如果我调用 zip->numFiles,它 returns 我怀疑的数字,但 file_exists($zipname) 仍然 returns 错误。添加文件后立即$zip->getStatusString() returns "No Error"。如果我在调用 zip->close() 之后立即调用 $zip->getStatusString() 它 returns "Failure to create temporary file: Permission denied".

我已经检查了这个 link Zip->close() returns false despite checks,并确保我正在检查的 $file 与我的 $file 完全相同' m 添加到 $zip.

有没有我忽略的东西?

从评论来看,这个问题确实有答案:

虽然文件可能是可读和可写的,但写入 zip 存档的位置也需要 Web 服务器可写。

正在计算 zip 存档计数中的文件数,因为 zip 流在那个阶段位于内存中,而不是在磁盘上。