《PHP應用:php讀取遠程gzip壓縮網頁的方法》要點:
本文介紹了PHP應用:php讀取遠程gzip壓縮網頁的方法,希望對您有用。如果有疑問,可以聯系我們。
PHP編程本日在調取一家商城的頁面信息時候,使用file_get_contents抑或curl:
代碼如下:
$url = 'http://www.xxx.com/21/?type=23′;?
$temp = file_get_contents($url);?
echo $temp;
PHP編程
都得到一片亂碼,查看了許多內容,包含頁面的header信息,發現原來頁面使用了.
PHP編程?
PHP編程![PHP應用:php讀取遠程gzip壓縮網頁的方法]()
PHP編程?
PHP編程類似的信息,即Content-Encoding為gzip,即該站點開啟了gzip壓縮.這里的辦理方案有多種,當然如果你使用file_get_contents的話,可以這樣修改:
PHP編程?
代碼如下:
file_get_contents("compress.zlib://".$url);
PHP編程或者使用curl來實現:
代碼如下:
function curl_get($url, $gzip=false){??
??????? $curl = curl_init($url);??
??????? curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);??
??????? curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);??
??????? if($gzip) curl_setopt($curl, CURLOPT_ENCODING, "gzip"); // 關鍵在這里??
??????? $content = curl_exec($curl);??
??????? curl_close($curl);??
??????? return $content;??
}?
PHP編程同時,參考手冊上面的解法,還可以對保留gzip類型的字符串進行處理如下:
代碼以下:
function gzdecode($data){??
??? $g=tempnam(‘/tmp','ff');??
??? @file_put_contents($g,$data);??
??? ob_start();??
??? readgzfile($g);??
??? $d=ob_get_clean();??
??? return $d;??
}
《PHP應用:php讀取遠程gzip壓縮網頁的方法》是否對您有啟發,歡迎查看更多與《PHP應用:php讀取遠程gzip壓縮網頁的方法》相關教程,學精學透。維易PHP學院為您提供精彩教程。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/13157.html