一切都在UTF8上,但我仍然有像 这样的奇怪的字符

时间:2015-07-13 11:46:22

标签: php mysql utf-8 character-encoding

我的数据库是“utf8_general_ci”,表&列也是“utf8_general_ci”。 Php文件也保存在UT8中,我在UTF8中得到了标题,所以...一切都是UTF8。

但是当有口音时,我仍然得到那个 字符。

我用iconv检查了它是UTF8。 我还用mb_detect_encoding测试了编码,结果是相同的UTF8。

这让我发疯了......

我有一件事要做:utf8_encode($ string)这给我“Actualité”而不是“Actualit s”

这可能是双utf8编码的吗?

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:4)

好的,我终于成功了。谢谢Mark Ba​​ker。这是我使用的解决方案。

我刚把它添加到我的PDO层:

$dbh = new PDO('mysql:charset=utf8mb4');

还有其他两种方法可以做,请在此处进一步阅读:UTF-8 all the way through