查看: 56|回覆: 0

[教程] Phpcms采集时出现编码转化错误的解决方法

[複製鏈接]

1

主題

0

回帖

0

積分

热心网友

金币
0
閲讀權限
220
精華
0
威望
0
贡献
0
在線時間
0 小時
註冊時間
2012-4-19
發表於 2023-8-14 00:00:00 | 顯示全部樓層 |閲讀模式

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; 



这样就能解决问题了。

回覆

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即注册

本版積分規則

相关侵权、举报、投诉及建议等,请发 E-mail:qiongdian@foxmail.com

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部