如何解决php curl获取乱码

  • 来源:网络
  • 更新日期:2020-09-11

摘要:php curl获取乱码的解决办法:首先打开相应的脚本文件;然后获取网页文本;最后通过“b_convert_encoding($outPageTxt, 'utf-8','GB2312');”方法把GB2312转到“

php curl获取乱码的解决办法:首先打开相应的脚本文件;然后获取网页文本;最后通过“b_convert_encoding($outPageTxt, 'utf-8','GB2312');”方法把GB2312转到“UTF-8”即可。

推荐:《PHP视频教程》

问题

想从电影天堂获取电影信息用到了curl,在结果中出现了乱码,如图:

解决办法

在官方文档中有个 CURLOPT_ENCODING 选项,试了,其实并没有什么用。
我们看到该页面头部说明了编码 GB2312

应该这样

//curl 前面的设置不冗述
//执行 curl
$outPageTxt = curl_exec($film); //outPageTxt 是得到的网页文本
curl_close($film);

//文本转码
$outPageTxt = mb_convert_encoding($outPageTxt, 'utf-8','GB2312');
//把 GB2312 转到 UTF-8

echo $outPageTxt;

使用说明
mb_convert_encoding(输出变量,转到的编码,从什么编码转)

结果