中文字幕日韩一区二区_国产一区二区av_国产毛片av_久久久久国产一区_色婷婷电影_国产一区二区精品

使用php判斷網(wǎng)頁是否gzip壓縮

昨天晚上群里有朋友采集網(wǎng)頁時發(fā)現(xiàn)file_get_contents 獲得的網(wǎng)頁保存到本地為亂碼,響應的header 里 Content-Encoding:gzip
但在瀏覽器里看是正常的。
因為我有過相關經(jīng)驗馬上發(fā)現(xiàn)是網(wǎng)站開啟了gzip而file_get_contents 獲得的是壓縮過的頁面,而不是解壓過的頁面(不知道是不是要file_get_conttents 請求網(wǎng)頁時帶上相應的參數(shù),直接獲得沒有被gzip壓縮過的網(wǎng)頁?)
剛好我前不久剛看到可以用讀取文件的前2個字節(jié)判斷文件類型。群里面的朋友也說gzip壓縮過的網(wǎng)頁(gbk編碼)前2字節(jié)是 1F 8B 于是就可以判斷網(wǎng)頁是否gzip壓縮過。
代碼如下:
復制代碼 代碼如下:
//米爾軍事網(wǎng)采用 gzip壓縮網(wǎng)頁
//file_get_contents 直接獲得的網(wǎng)頁是亂碼。
header('Content-Type:text/html;charset=utf-8' );
$url = 'http://www.miercn.com';
$file = fopen($url, "rb");  
//只讀2字節(jié)  如果為(16進制)1f 8b (10進制)31 139則開啟了gzip ;
$bin = fread($file, 2); 
fclose($file);  
$strInfo = @unpack("C2chars", $bin);  
$typeCode = intval($strInfo['chars1'].$strInfo['chars2']);  
$isGzip = 0;  
switch ($typeCode)  
{
    case 31139:      
      //網(wǎng)站開啟了gzip
        $isGzip = 1;
        break;
    default:  
        $isGzip = 0;
}  
$url = $isGzip ? "compress.zlib://".$url:$url; // 三元表達式
$mierHtml = file_get_contents($url); //獲得米爾軍事網(wǎng)數(shù)據(jù)
$mierHtml = iconv("gbk","utf-8",$mierHtml);
echo $mierHtml;

php技術使用php判斷網(wǎng)頁是否gzip壓縮,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久久久国产精品一区二区 | 国产一区二区三区视频免费观看 | 国产中文字幕亚洲 | 久久国产一区二区 | 亚洲国产二区 | 人人cao | 欧美日韩精品一区二区 | 一区二区精品在线 | 国产精品视频中文字幕 | 欧美精品在线视频 | 亚洲毛片| 亚洲视频一区在线观看 | 午夜精品久久久久久久久久久久久 | 国产成人精品免费视频大全最热 | 天天草天天干 | 天天操天天操 | 中文字幕乱码视频32 | 久久精品色视频 | 一区二区三区韩国 | 亚洲成人a v| 精品一区二区三区91 | 国产高清在线视频 | 久久夜视频 | 日韩欧美手机在线 | 爱爱爱av | 亚洲 欧美 日韩在线 | 欧美区日韩区 | 久久久久国产精品免费免费搜索 | 中文字幕欧美一区 | 国产欧美视频一区 | 欧美日韩国产一区二区三区 | 拍戏被cao翻了h承欢 | 国产大学生情侣呻吟视频 | 中文字幕亚洲一区二区三区 | 久久在视频 | 欧美日韩三级视频 | 亚洲国产中文字幕 | 国产不卡一区在线观看 | 午夜免费| 麻豆91av| 黄色欧美 |