dedecms 系统配置参数 输入中文保存后为空
dedecms 系统配置参数 输入中文保存后为空
1人回复
最佳答案
你可能现在的php5.4以上的版本,htmlspecialchars输出中文为空的问题,原来默认是ISO-8859-1,5.4后默认变成utf-8!然后中文使用这个函数就输出为空白了。
从旧版升级到php5.4,最麻烦的就是htmlspecialchars这个问题了!可能老外认为网页普遍应该是utf-8编码的,于是苦了那些用GB2312,GBK编码的中文站。
解决方案:
方法一、苦逼的修改所有用到htmlspecialchars($str)函数地方的程序
1.1、GB2312修改成:htmlspecialchars($str,ENT_COMPAT,'GB2312');
1.2、GBK则必须要修改成:htmlspecialchars($str,ENT_COMPAT,'ISO-8859-1');方法二、封装一个函数,批量替换效率高
2.1、批量替换所有“htmlspecialchars(”为“htmlspecialchars_GBK(”。
2.2、打开/include/common.inc.php文件在最后面加入以下函数:
//GXCMS自定义函数封装
function htmlspecialchars_GBK($str) {
return htmlspecialchars($str,ENT_COMPAT,'ISO-8859-1');
}这样就能解决php5.4版本后输出中文为空的问题了。
0% (0)
0% (0)
目前有 0 个人评价
|
回答时间:2014-11-14 21:50
提问者对于答案的评价:
无