请教gzip压缩和解压

@Ta 2015-08-22 2675点击
虎友们知道php里怎样将已gzip的网页原始数据怎样还原吗?
回复列表(5|隐藏机器人聊天)
  • @Ta / 2015-08-22 / /
    gzdecode()
  • @Ta / 2015-08-22 / /
    string gzdecode ( string $data [, int $length ] )@梁杰s
  • @Ta / 2015-08-22 / /
    
    if (!function_exists('gzdecode')) {
    function gzdecode ($data) {
        $flags = ord(substr($data, 3, 1));
        $headerlen = 10;
        $extralen = 0;
        $filenamelen = 0;
        if ($flags & 4) {
            $extralen = unpack('v' ,substr($data, 10, 2));
            $extralen = $extralen[1];
            $headerlen += 2 + $extralen;
        }
        if ($flags & 8) // Filename
            $headerlen = strpos($data, chr(0), $headerlen) + 1;
        if ($flags & 16) // Comment
            $headerlen = strpos($data, chr(0), $headerlen) + 1;
        if ($flags & 2) // CRC at end of file
            $headerlen += 2;
        $unpacked = @gzinflate(substr($data, $headerlen));
        if ($unpacked === FALSE)
            $unpacked = $data;
        return $unpacked;
    }
    }
    
  • @Ta / 2015-08-23 / /
添加新回复
回复需要登录