Php 如何创建低内存限制的大型zip文件?
我需要从jpg文件创建一个大的zip存档。zip生成在64MB上中断-无法增加主机上的内存限制 我尝试了许多方法来生成zip文件,但都失败了:Php 如何创建低内存限制的大型zip文件?,php,zip,Php,Zip,我需要从jpg文件创建一个大的zip存档。zip生成在64MB上中断-无法增加主机上的内存限制 我尝试了许多方法来生成zip文件,但都失败了: PHP ZipArchive类 exec(“zip-r file.zip*.jpg”) pclzip(具有生成临时文件而不是内存的选项) 也许有另一种方法可以使用低内存输入的流/临时文件创建zip文件 感谢您的建议您可以尝试在脚本中设置时间限制(秒)或ini设置(“最大执行时间”),秒 你可以试试这样的 initialise your zip cla
- PHP ZipArchive类
- exec(“zip-r file.zip*.jpg”)
- pclzip(具有生成临时文件而不是内存的选项)
感谢您的建议您可以尝试在脚本中设置时间限制(秒)或ini设置(“最大执行时间”),秒 你可以试试这样的
initialise your zip class
foreach ( files in the directory as $idx => $name) {
add $name to your zip file;
// every 10 files zipped, reset the max_execution_time
if ( $idx > 0 && $idx % 10 == 0 ) {
set_time_limit ( 30 ); //if it doesnt work try to use ini_set('max_execution_time', 30);
}
}
它将继续将最大执行时间重置为每压缩10个文件30秒
我以10个文件为例,您可以根据您的平均文件大小进行设置。您读过这篇文章吗?它看起来很有用,而且相当全面@NickAllen谢谢,我试过fopen,但也没用(我认为在服务器上,不仅在php中,机器本身也有限制。