您好,我在这个 joomla 网站的某些页面上遇到了一个非常奇怪的错误:
如果您查看特定新闻的详细信息,à 字符会正确显示。
其他重音字符似乎不受影响。
我检查过 MySql 数据库中的默认 UTF-8 编码以及文本文件采用 UTF-8 编码。
其他想法?
最佳答案
在您的案例中非常有趣的是它只影响字母 à
!所以这不可能是编码问题。
这是我对您的问题的看法。字母 à
在 utf8 中以两个字节编码。第一个字节是 xC3
,即 latin-1 中的 Ã
,第二个字节是...不间断空格! (其他重音字母,例如 è
由 Ã
后跟 latin-1 中的其他重音字母编码,它们不受影响)。
因此,我的猜测是您在某处有一个脚本可以删除或替换 latin-1 中的不间断空格,即字符 xA0
。生成的孤独字节xC3
无法正常显示,所以显示一般占位符�
。 (只要用 latin-1 加载你的页面,你就会发现我是对的)。
找到那个删除不间断空格的脚本,你会没事的。
关于PHP 字符编码 � 符号代替 à,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7529996/