请注意,gzuncompress() 可能会无法解压缩某些压缩字符串并返回数据错误。
问题可能是外部压缩字符串在文件末尾具有 CRC32 校验和而不是 PHP 预期的 Adler-32。
解决方法
<?php
function gzuncompress_crc32($data) {
$f = tempnam('/tmp', 'gz_fix');
file_put_contents($f, "\x1f\x8b\x08\x00\x00\x00\x00\x00" . $data);
return file_get_contents('compress.zlib://' . $f);
}
?>