通过 PHP 解压 .gz 文件
我需要能够通过 PHP 解压缩使用 gzip
格式的字符串中的一些数据。我需要通过 PHP 来完成此操作,而不是通过调用(例如通过系统)外部程序。
我查看文档,找到 gzdecode。可惜它不存在。通过谷歌进一步挖掘,似乎这个函数是在 PHP6 中实现的,我无法使用它。 (有趣的是,gzencode
存在并且正在运行)。
我相信 - 但我不确定 - gzip
格式只是有一些额外的标头数据。有没有办法通过操作这些额外数据然后使用 gzuncompress 或其他方式来解压缩它?
谢谢
I need to be able to decompress through PHP some data that I have in a string which uses the gzip
format. I need to do this via PHP, not by calling - through system
for example - an external program.
I go to the documentation and I find gzdecode. Too bad it doesn't exist. Digging further through google it appears this function was implemented in PHP6, which I cannot use. (Interestingly enough gzencode
exists and is working).
I believe - but I'm not sure - that the gzip
format simply has some extra header data. Is there a way to uncompress it by manipulating this extra data and then using gzuncompress
, or some other way?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
PHP 中还没有
gzdecode()
。但是您可以使用 upgradephp 中的实现。它实际上只是一些额外的标头字节。另一种选择是使用 gzopen。也许就像
gzopen("data:app/bin,....")
甚至。gzdecode()
is not yet in PHP. But you can use the implementation from upgradephp. It really is just a few extra header bytes.Another option would be to use gzopen. Maybe just like
gzopen("data:app/bin,....")
even.好吧,我通过阅读我在原始帖子中链接的
gzdecode
页面上的评论找到了答案。其中一位用户 Aaron G 提供了它的实现并且它有效:Well I found my answer by reading the comments on the
gzdecode
page I linked in my original post. One of the users, Aaron G, provided an implementation of it and it works:尝试gzinflate。
Try gzinflate.
您尝试过
gzuncompress
吗?http://www.php.net/manual/en/function.gzuncompress.php
Did you tried
gzuncompress
?http://www.php.net/manual/en/function.gzuncompress.php