gzdecode() 内存不足 - 大小已用尽

gzdecode() insufficient memory - size is exhausted

您知道在 php 中解压大型 .gz 的任何解决方案吗(>200 MB .gz,>4GB 原始...可能在内部打包 >1GB 或 >2GB)?

需要逐个解码 .gz 的解决方案。

代码 gzdecode(@file_get_contents($file))

得到 PHP 错误:

PHP Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate ...

当然。

我无法增加网络服务器的 PHP 内存限制,而且在数据 >>1GB 时尝试似乎没有意义。

使用 inflate_add() 不是解决方案,它会生成相同的“PHP 致命错误:允许的内存大小...耗尽...”。

有什么想法吗? (我在 1, 2 等中没有找到答案)

使用 gzopen() 而不是 gzdcode()。然后你可以使用 gzread().

一次读取小块