我有一些表设置为utf8_general_ci
并使用PHP的mysqli驱动程序,charset设置为“utf8
”。我的default_charset也设置为UTF-8
但是,字符正在替换为“\u0101l
”
知道这是什么或如何修复它?在我没有使用utf8的mysqli之前它只是显示一个问号,而不是一个钻石问号 - 只是一个普通的'?'
谢谢!
答案 0 :(得分:1)
我很确定你在某处使用“htmlentities()”或“html_entity_decode()”。问题是,htmlentities()仍然试图将其输入解释为ISO-8859-1,而html_entity_decode()现在默认为UTF-8。解决方案:如果您使用上面列出的任何这些功能,请每次都明确指定编码类型。我遇到了这个问题,我的一位同事也写了一篇关于这个问题的文章http://lab.clearpixel.com.au/2012/01/html-entity-character-conversion-in-php/
我希望它有所帮助