domdocument php charset gbk,php抓取gbk编码页面中文乱码解决方法

php抓取gbk编码 中文乱码  多种解决方法

今天做项目,抓取了一个gbk编码的页面后发生中文乱码,最后找到解决方案是:

使用:$content = mb_convert_encoding($content ,'HTML-ENTITIES',"GBK");转码后就好了。$url = 'http://www.juming.com/ykj?api_sou=1&tao='.$id.'&ymlx=0&jgpx=0&1=1&meiye='.$pageSize.'&page='.$page;

$content = httpRequest($url);

//$content = mb_convert_encoding($content,'utf-8');  //此方方法 打印后还是乱码

//$content = mb_convert_encoding($content,"utf-8", "GBK");  //此方方法 打印后还是乱码

//$content = mb_convert_encoding($content,'UTF-8','UTF-8,GBK,GB2312,BIG5'); // 此方方法 打印后还是乱码

// 最后用此方法,解决了

$content = mb_convert_encoding($content ,'HTML-ENTITIES',"GBK");

$dom       = new \DOMDocument();

$BDomain   = new BDomain();

//从一个字符串加载HTML

@$dom->loadHTML($content);

$xpath = new \DOMXPath($dom);

php使用curl获取文本出现中文乱码的解决办法

在使用php的curl获取远程html文本时出现了中文乱码。

解决办法的代码如下:$url = "gongfuma.com";

//获取页面内容

$ch = curl_init();

curl_setopt ($ch, CURLOPT_URL, $url);

curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);

curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT,20);

$res = curl_exec($ch);

curl_close($ch);

$res=mb_convert_encoding($res, 'UTF-8', 'UTF-8,GBK,GB2312,BIG5');

//使用该函数对结果进行转码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值