php – 使用iconv的Zend Framework和字符串转换

一个站点被移动到另一个安装了Solaris和其他iconv设置的服务器.现在,当我使用Zend Framework中的“StringLength”函数验证任何内容时,我的脚本失败并显示以下错误:

Notice: iconv_strlen() [function.iconv-strlen]: Wrong charset, conversion from `UTF-8' to `UCS-4LE' is not allowed in /usr_files/phplibs/library/Zend/Validate/StringLength.php on line 213

据我所知,服务器确实知道“UCS-4LE”,这是主要问题.

服务器管理员回答他可以解决此问题.您对如何在此服务器上设置ZF有任何想法吗?

解决方法:

iconv库期待一个以’UCS-4LE’编码的字符串,但收到一个被检测为’UTF-8’的字符串.您可能在新服务器上有不同的默认编码.尝试将第三个参数传递给constructor(作为’utf-8′).

上一篇:php – 如何检测哪种类型的中文编码有文本文件?


下一篇:linux – 如何使用来自Bash的iconv递归重命名文件和文件夹