Phpcms采集时出现编码转化错误的解决方法
<p>phpcms在本地测试正常 传到虚拟主机上采集的时候出现这个错误 <br>
Warning: mb_convert_encoding() : Unknown encoding ”UTF-8//IGNORE” <br><br>
看了半天源码,发现是phpcms编码转化的BUG,修改步骤如下: <br><br>
打开\phpcms\libs\functions\global.func.php文件 <br><br>
找到 <br>
</p>
<div>
<p>
代码如下:</p>
</div>
<div id="phpcode18">
<br>
/** <br>
* iconv 编辑转换 <br>
*/ </div>
<p>
<br><span>修改代码,红色的那一句 </span></p>
<div>
<p>
代码如下:</p>
</div>
<div id="phpcode19">
<br>
/** <br>
* iconv 编辑转换 <br>
*/ <br>
if (!function_exists('iconv')) { <br>
function iconv($in_charset, $out_charset, $str) { <br>
$in_charset = strtoupper($in_charset); <br>
$out_charset = strtoupper($out_charset); <br>
if (function_exists('mb_convert_encoding')) { <br>
return mb_convert_encoding($str, str_replace('//IGNORE','',$out_charset), str_replace('//IGNORE','',$in_charset)); <br>
} else { <br>
pc_base::load_sys_func('iconv'); <br>
$in_charset = strtoupper($in_charset); <br>
$out_charset = strtoupper($out_charset); <br>
if ($in_charset == 'UTF-8' && ($out_charset == 'GBK' || $out_charset == 'GB2312')) { <br>
return utf8_to_gbk($str); <br>
} <br>
if (($in_charset == 'GBK' || $in_charset == 'GB2312') && $out_charset == 'UTF-8') { <br>
return gbk_to_utf8($str); <br>
} <br>
return $str; <br>
} <br>
} <br>
} </div>
<p>
<br><span>这样就能解决问题了。</span></p>
頁:
[1]