UTF8 - 没有正确显示æøå

时间:2014-05-19 07:26:10

标签: php utf-8 mysqli character-encoding

我遇到问题,例如æøå被错误地显示出来。我几乎尝试了一切,但没有成功。但是,有些地方æøå正确显示。见下图:

这里显示了所需:

enter image description here

同时在这里......

enter image description here

来自数据库的2个片段: enter image description here

enter image description here

我做了以下事情:

  • 在没有BOM的情况下以UTF8编码我的所有文件
  • 强制UTF8到标题:标题(“Content-type:text / html; charset = UTF-8”);
  • 使用set_charset(“utf8”);在mysqli-connection
  • 我有“SET names'utf8'
  • 我已将meta-charset设为utf8

我错过了什么?我将不胜感激任何意见和建议。提前谢谢!

1 个答案:

答案 0 :(得分:2)

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

$string = htmlentities($string);

如果没有定义编码,它会返回被Jukka提到的被误解为ISO-8859-1(假设)的数据。我将其更改为htmlspecialchars($string, ENT_QUOTES, "UTF-8") insted并解决了问题。