Php UTF8-不显示æøå;正确地

Php UTF8-不显示æøå;正确地,php,utf-8,mysqli,character-encoding,Php,Utf 8,Mysqli,Character Encoding,我遇到诸如æå等字符显示错误的问题。我几乎什么都试过了,但没有成功。但是,有些地方显示正确。见下图: 此处,如所需显示: 与此同时,这里 和数据库中的两个片段: 我做了以下工作: 用UTF8编码我所有的文件,没有BOM 通过header:header强制使用UTF8(“内容类型:text/html;字符集=UTF-8”) 已用字符集(“utf8”);在mysqli连接中 我有“设置名称'utf8' 我已将meta字符集设置为utf8 我遗漏了什么?如果有任何意见和建议,我将不胜感激。

我遇到诸如æå等字符显示错误的问题。我几乎什么都试过了,但没有成功。但是,有些地方显示正确。见下图:

此处,如所需显示:

与此同时,这里

和数据库中的两个片段:

我做了以下工作:

  • 用UTF8编码我所有的文件,没有BOM
  • 通过header:header强制使用UTF8(“内容类型:text/html;字符集=UTF-8”)
  • 已用字符集(“utf8”);在mysqli连接中
  • 我有“设置名称'utf8'
  • 我已将meta字符集设置为utf8

我遗漏了什么?如果有任何意见和建议,我将不胜感激。提前感谢!

我发现了问题。我有一个验证输出的函数。在这个函数中,我使用了以下内容:

$string = htmlentities($string);

在没有定义编码的情况下,它返回的数据被误认为是Jukka提到的ISO-8859-1(假设)。我将其更改为
htmlspecialchars($string,entu引号,“UTF-8”)
insted,它解决了问题。

您看到的字符串“ø¸Ã¥”就是您在使用“æåå”时得到的结果是UTF编码的,但数据被误解为ISO-8859-1或windows-1252。正确的元素和错误的元素之间有什么区别。我们只能看到一些样式的效果,而不能看到标记或插入数据的方式。谢谢你,Jukka。看到我的答案了吗