解析PHP中的file_get_contents獲取遠(yuǎn)程頁面亂碼的問題
更新時間:2013年06月25日 16:16:52 作者:
本篇文章是對PHP中的file_get_contents獲取遠(yuǎn)程頁面出現(xiàn)亂碼的問題進行了詳細(xì)的分析介紹,需要的朋友參考下
PHP的file_get_contents獲取遠(yuǎn)程頁面內(nèi)容,如果是gzip編碼過的,返回的字符串就是編碼后的亂碼
1、解決方法,找個ungzip的函數(shù)來轉(zhuǎn)換下
2、給你的url加個前綴,這樣調(diào)用
$content = file_get_contents("compress.zlib://".$url);
無論頁面是否經(jīng)過gzip壓縮,上述代碼都可以正常工作!
使用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"); // 關(guān)鍵在這里
$content = curl_exec($curl);
curl_close($curl);
return $content;
}
1、解決方法,找個ungzip的函數(shù)來轉(zhuǎn)換下
2、給你的url加個前綴,這樣調(diào)用
$content = file_get_contents("compress.zlib://".$url);
無論頁面是否經(jīng)過gzip壓縮,上述代碼都可以正常工作!
使用curl模塊同樣可解決問題
復(fù)制代碼 代碼如下:
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"); // 關(guān)鍵在這里
$content = curl_exec($curl);
curl_close($curl);
return $content;
}
相關(guān)文章
thinkphp中的多表關(guān)聯(lián)查詢的實例詳解
這篇文章主要介紹了thinkphp中的多表關(guān)聯(lián)查詢的實例詳解的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解掌握這部分內(nèi)容,需要的朋友可以參考下2017-10-10
PHP strip_tags()去除HTML、XML以及PHP的標(biāo)簽介紹
這篇文章主要介紹了PHP strip_tags()去除HTML、XML以及PHP的標(biāo)簽介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-02-02

