解析PHP中的file_get_contents獲取遠(yuǎn)程頁(yè)面亂碼的問(wèn)題
更新時(shí)間:2013年06月25日 16:16:52 作者:
本篇文章是對(duì)PHP中的file_get_contents獲取遠(yuǎn)程頁(yè)面出現(xiàn)亂碼的問(wèn)題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
PHP的file_get_contents獲取遠(yuǎn)程頁(yè)面內(nèi)容,如果是gzip編碼過(guò)的,返回的字符串就是編碼后的亂碼
1、解決方法,找個(gè)ungzip的函數(shù)來(lái)轉(zhuǎn)換下
2、給你的url加個(gè)前綴,這樣調(diào)用
$content = file_get_contents("compress.zlib://".$url);
無(wú)論頁(yè)面是否經(jīng)過(guò)gzip壓縮,上述代碼都可以正常工作!
使用curl模塊同樣可解決問(wèn)題
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、解決方法,找個(gè)ungzip的函數(shù)來(lái)轉(zhuǎn)換下
2、給你的url加個(gè)前綴,這樣調(diào)用
$content = file_get_contents("compress.zlib://".$url);
無(wú)論頁(yè)面是否經(jīng)過(guò)gzip壓縮,上述代碼都可以正常工作!
使用curl模塊同樣可解決問(wèn)題
復(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;
}
您可能感興趣的文章:
- PHP-CGI進(jìn)程CPU 100% 與 file_get_contents 函數(shù)的關(guān)系分析
- 深入php函數(shù)file_get_contents超時(shí)處理的方法詳解
- file_get_contents("php://input", "r")實(shí)例介紹
- php讀取本地文件常用函數(shù)(fopen與file_get_contents)
- PHP file_get_contents設(shè)置超時(shí)處理方法
- php 使用file_get_contents讀取大文件的方法
- PHP使用fopen與file_get_contents讀取文件實(shí)例分享
相關(guān)文章
php中echo、print和print_r的區(qū)別點(diǎn)及用法總結(jié)
在本篇文章里小編給大家整理的是一篇關(guān)于php中echo、print和print_r的區(qū)別點(diǎn)及用法總結(jié)內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。2021-12-12PHP中使用正則表達(dá)式提取中文實(shí)現(xiàn)筆記
這篇文章主要介紹了PHP中使用正則表達(dá)式提取中文實(shí)現(xiàn)筆記,本文還講解了韓文、日文的正則表達(dá)式,并同時(shí)給出實(shí)現(xiàn)代碼和使用示例,需要的朋友可以參考下2015-01-01學(xué)習(xí)php設(shè)計(jì)模式 php實(shí)現(xiàn)模板方法模式
這篇文章主要介紹了php設(shè)計(jì)模式中的模板方法模式,使用php實(shí)現(xiàn)模板方法模式,感興趣的小伙伴們可以參考一下2015-12-12php設(shè)計(jì)模式 Command(命令模式)
將一個(gè)請(qǐng)求封裝為一個(gè)對(duì)象從而使你可用不同的請(qǐng)求對(duì)客戶進(jìn)行參數(shù)化,對(duì)請(qǐng)求排除或記錄請(qǐng)求日志,以及支持可取消的操作2011-06-06PHP基于文件鎖解決多進(jìn)程同時(shí)讀寫(xiě)一個(gè)文件問(wèn)題示例
這篇文章主要介紹了PHP基于文件鎖解決多進(jìn)程同時(shí)讀寫(xiě)一個(gè)文件的方法,結(jié)合實(shí)例形式分析了PHP使用flock進(jìn)行文件讀寫(xiě)加鎖操作用法,需要的朋友可以參考下2017-09-09