我的网站上有一个用于“下载篮”功能的 ZipArchive 脚本。用户选择他们想要添加到购物篮的音频,然后脚本对用户进行身份验证并获取所有受保护的文件并将它们添加到准备下载的 zip 中。
下载 zip 后,代码将删除该文件。这一切都运行良好,但是我遇到了有关更大文件的问题!如果用户想要压缩总计超过 250mb 的曲目,则写入的临时 zip 文件永远不会大于 250mb - 它只会被覆盖并重新开始。
我的两个问题是:
感谢您的帮助。
ZIP 文件的压缩文件大小限制为 4 GB。对于更大的 4 GB,您需要单独拆分它。
但是它可能取决于 memory_limit(),如果您即时压缩它将使用较低的容量。
ZipArchive 是否有不同的方式来编写文件 更大的文件?
不。但如果您愿意,您可以拆分存档器,然后加入以字符串形式提取。
ZIP64 支持,将文件大小限制增加到 4 GB 以上。 因此,这个大小限制问题在 PHP 7 和 8 中不再存在。