网站地图    收藏   

主页 > 后端 > phpcmsv9 >

Phpcms采集时出现编码转化错误的解决方法_phpcms

来源:自学PHP网    时间:2014-11-21 10:16 作者: 阅读:

[导读] phpcms在本地测试正常,传到虚拟主机上采集的时候出现Warning: mb_convert_encoding() [function.mb-convert-encoding]: Unknown encoding ”UTF-8//IGNORE”错误的解决办法...

phpcms在本地测试正常,传到虚拟主机上采集的时候出现Warning: mb_convert_encoding() [function.mb-convert-encoding]: Unknown encoding ”UTF-8//IGNORE”错误的解决办法

phpcms在本地测试正常 传到虚拟主机上采集的时候出现这个错误
  Warning: mb_convert_encoding() [function.mb-convert-encoding]: Unknown encoding ”UTF-8//IGNORE”

  看了半天源码,发现是phpcms编码转化的BUG,修改步骤如下:

  打开\phpcms\libs\functions\global.func.php文件

  找到

复制代码
代码如下:

/**
* iconv 编辑转换
*/  

修改代码,红色的那一句

复制代码
代码如下:

/**
* iconv 编辑转换
*/
if (!function_exists('iconv')) {
function iconv($in_charset, $out_charset, $str) {
$in_charset = strtoupper($in_charset);
$out_charset = strtoupper($out_charset);
if (function_exists('mb_convert_encoding')) {
return mb_convert_encoding($str, str_replace('//IGNORE','',$out_charset), str_replace('//IGNORE','',$in_charset));
} else {
pc_base::load_sys_func('iconv');
$in_charset = strtoupper($in_charset);
$out_charset = strtoupper($out_charset);
if ($in_charset == 'UTF-8' && ($out_charset == 'GBK' || $out_charset == 'GB2312')) {
return utf8_to_gbk($str);
}
if (($in_charset == 'GBK' || $in_charset == 'GB2312') && $out_charset == 'UTF-8') {
return gbk_to_utf8($str);
}
return $str;
}
}
}

这样就能解决问题了。

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论