最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php對gzip文件或者字符串解壓實例參考

 更新時間:2008年07月25日 23:13:06   作者:  
要采集一個網(wǎng)站,目標站采用了gzip壓縮傳輸網(wǎng)頁,本來應該只要發(fā)送一個http頭 Accept-Encoding: identity或者干脆不發(fā)送這個頭等,就可以使目標站返回沒有經(jīng)過gzip壓縮的頁面了,不過很不幸,目標站無視客戶端的請求,仍然返回gzip數(shù)據(jù),造成亂碼。
      其實php對gzip解壓很簡單,用內(nèi)置的gzdecode函數(shù)就可以了,不過很可惜我配置了半天也無法支持gzdecode函數(shù),所以只好變通一下: 
復制代碼 代碼如下:

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;     
     }     
}

調(diào)用方法很簡單: 
復制代碼 代碼如下:

$f=@file_get_contents("http://www.fzitv.net");      
echo gzdecode($f);     

相關(guān)文章

最新評論

甘德县| 健康| 栾城县| 海兴县| 漳浦县| 凤台县| 棋牌| 乌恰县| 英超| 凯里市| 崇文区| 西贡区| 芒康县| 山阳县| 莱芜市| 铁岭市| 宝丰县| 长子县| 大新县| 介休市| 平昌县| 曲周县| 绥宁县| 峡江县| 马公市| 太原市| 阳高县| 康平县| 仪征市| 尼玛县| 礼泉县| 子洲县| 长子县| 航空| 门头沟区| 阿瓦提县| 卓资县| 萝北县| 盐城市| 永安市| 三门县|