+ -
当前位置:首页 → 问答吧 → 哪位高手给出个gzip页面压缩类

哪位高手给出个gzip页面压缩类

时间:2007-09-11

来源:互联网

哪位高手给出个gzip压缩函数或者类,就是用于页面压缩的

作者: sjsr   发布时间: 2007-09-11

需要吗???
页面压缩apache自己会去做的。

作者: 神仙   发布时间: 2007-09-12

/**
     * 解析经过编码或者压缩过的内容
     * 支持:chunked,gzip,deflate
     * 备注:
     * 只根据服务器返回的Transfer-Encoding,Content-Encoding进行处理而非根据判断文件头进行处理的.
     * 所以在某些网站可能会出现"乱码"
     */
    function decode_body($String,$EOL="\r\n"){
        if(strtoupper($this->TransferEncoding)=='CHUNKED'){
            $Return=null;
            $EndLength=strlen($EOL);
            do{
                $String=ltrim($String);
                $StartPos=strpos($String,$EOL);
                $Length=hexdec(substr($String,0,$StartPos));
                if($this->ContentEncoding=='DEFLATE'){
                    $Return.=gzinflate(substr($String,($StartPos+$EndLength+10),$Length));
                }elseif($this->ContentEncoding=='GZIP'){
                    $Return.=gzuncompress(substr($String,($StartPos+$EndLength),$Length));
                }else{
                    $Return.=substr($String,($StartPos+$EndLength),$Length);
                }
                $String=substr($String,($Length+$StartPos+$EndLength));
                $End=trim($String);
            }while(!empty($End));
            return $Return;
        }elseif($this->ContentEncoding=='GZIP' && !$this->CURL){
            return gzuncompress($String);
        }elseif($this->ContentEncoding=='DEFLATE' && !$this->CURL){
            return gzinflate(substr($String,10));
        }else{
            return $String;
        }
    }

摘自
http://www.phpchina.com/bbs/viewthread.php?tid=34220

作者: lazy   发布时间: 2007-09-12

apache2下如何配置mod_gzip啊,我配置完了, 只要是PHP中没有开启GZIP的页面,一律无法显示, 开启了GZIP的页面,去mod_gzip的日志文件中查看,发现并没有压缩。。真郁闷

作者: xjxaixxy   发布时间: 2007-09-13

这个技术我也不会,希望和大家好好学习一下

作者: zdxbeyond   发布时间: 2010-09-08