当前位置:编程学习 > php >>

忽略错误iconv() Detected an illegal character in input string

忽略iconv()错误提示iconv() Detected an illegal character in input string的方法

用iconv()转换一个输出字符编码不支持的字符时,如iconv('UTF-8', 'GB2312', '囧'),会遇到这样的错误提示:

Notice: iconv() [function.iconv]: Detected an illegal character in input string ...

因为GB2312表示的是简体中文,不支持像"囧"之类的更为复杂的汉字以及一些特殊字符,这当然会报错了,解决办法有两种:

1. 扩大输出字符编码的范围,如iconv('UTF-8', 'GBK', '囧'),则可以正确地输出,因为GBK支持的字符范围更广;

2. 在输出的字符编码字符串后面加上"//IGNORE",如iconv('UTF-8', 'GB2312//IGNORE', '囧'),这样做其实是忽略了不能转换的字符,避免了出错但却不能够正确地输出(即空白不、输出)。

还有我以前从mssql转向mysql,而mysql又设置了utf-8编码,最后直接取消iconv转换,就对了,你试试吧或许有同样的问题

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,