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

所属分类: CMS教程 / phpcms 阅读数: 1669
收藏 0 赞 0 分享

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;
}
}
}

这样就能解决问题了。

更多精彩内容其他人还在看

phpcms v9中调用发布时间的方法

在PhpCms V9中的首页或者文章内容页调用发布时间{date('Y-m-d',$r[inputtime])}调用显示1970-01-01,然后尝试用截断的方法也没有成功,应怎么办?下面是解决方法
收藏 0 赞 0 分享

phpcms在本地安装完成后总是跳转到install/install.php

在本地安装完成后总是跳转到install/install.php,并且页面报404的错误,通过多次尝试找到了问题根源,下面与大家分享下
收藏 0 赞 0 分享

phpcms v9出现Can not connect to MySQL server错误的原因和解决方法

这篇文章主要介绍了phpcms v9出现Can not connect to MySQL server错误的原因和解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

phpcms v9调用自定义字段的方法

这篇文章主要介绍了phpcms v9调用自定义字段的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

phpcms调用全站最新文章列表的方法

这篇文章主要介绍了phpcms调用全站最新文章列表的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

phpcms v9引用images文件夹中的图片的方法

这篇文章主要介绍了phpcms v9引用images文件夹中的图片的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

PhpCms作者管理设置 phpcms教程

如何设置PhpCms作者管理
收藏 0 赞 0 分享

PhpCms类别管理教程

如何设置PhpCms类别管理
收藏 0 赞 0 分享

Phpcms关联链接管理设置教程

如何设置PhpCms关联链接管理,请看下面的教程
收藏 0 赞 0 分享

PhpCms投票调查问卷模块管理教程

如何设置PhpCms投票调查问卷模块管理,请看下面的教程
收藏 0 赞 0 分享
查看更多