各位高手前辈:小弟在使用帝国自带的采集功能时,预览采集内容时所有文字一切正常,但正式采集得到的内容,凡是生僻字就会显示乱码(如下图所示),普通文字则正常,请问是什么原因,如何解决

各位高手前辈:小弟在使用帝国自带的采集功能时,预览采集内容时所有文字一切正常,但正式采集得到的内容,凡是生僻字就会显示乱码(如下图所示),普通文字则正常,请问是什么原因,如何解决?紧急,知道的高手可在此回复或联系QQ11191176,在此拜谢,有大红包! 

上传以下图片:
帝国自带采集,采集到的内容生僻字显示乱码解决办法 - 小闻网

注:采集设置中的“页面编码转换”我选的是:GB2312->UTF8,因为我网站的编码是UTF8,采集目标站没有显示用的是什么编码,但只有选GB2312->UTF8才能正常预览和采集,其他“正常编码、 BIG5->UTF8、UNICODE->UTF8都不行。
帝国cms编码缺陷

矫正方法:
修改文件  /e/class/cjfun.php
大约  829 行  
                $str=DoIconvVal(“GB2312″,”UTF8”,$str);
替换为:
                
        $str=mb_convert_encoding( $str,’UTF8′,’GBK’);
谢老板大红包!
测试 如用 
$str=mb_convert_encoding( $str,’UTF8′,’gb2312′);
则个别汉字,会变成问号。
可见有的网站,虽然标明的编码是gb2312 ,但是个别字,不太好转。
解决的方法,就是在编码函数的参数中,用gbk替代gb2312
因为,gb2312是gbk的子集。甚至用 GB18030更可靠:
$str=mb_convert_encoding( $str,’UTF8′,’GB18030′);

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。