鉴于大家对网络知识十分关注,我们编辑小组在此为大家搜集整理了“解决Phpcms采集时出现编码转化的错误”一文,供大家参考学习
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;
}
}
}
这样就能解决问题了。
本文转自:/uploadfile/201407/4/0D11483533.gif'' border=''0''>