-1

可能重复:
通过 PHP 解压缩 .gz 文件

我不能将 gzdecode 与 php 一起使用,因为它没有安装并且我无法安装它,

到目前为止我一直在使用这个...

// GZIP DECODE
function gzDecode($d) {
$f = ord(substr($d, 3, 1));
$h = 10;
$e = 0;
if($f&4) {
    $e = unpack('v', substr($d, 10, 2));
    $e = $e[1];
    $h += 2 + $e;
}
if($f&8) {
    // ERROR HERE
    $h = @strpos($d, chr(0), $h) + 1;
}
if($f&16) {
    $h = strpos($d, chr(0), $h) + 1;
}
if($f&2) {
    $h += 2;
}
// ERROR HERE
$u = @gzinflate(substr($d, $h));
if($u == false) {
    $u = $d;
}
return $u;
}

它可以工作,但 PHP 5.3 有更好的解决方案吗?如果没有,有什么办法可以摆脱存在的错误?

4

1 回答 1

6

您是否看过http://php.net/gzdecode的评论中显示的一些材料?评论包括一个简单的使用方法gzinflate()一个纯 PHP 实现gzdecode()函数,你可以完全提升。

作为一般经验法则,不要在不必要的地方重新发明轮子!

于 2012-05-23T23:05:03.520 回答