来自MySQL数据库的Emojis显示为'?'

时间:2016-09-16 18:22:05

标签: php mysql

在我的Phorum数据库中,我已将排序规则更改为utf8mb4_general_ci并成功将emojis存储在邮件正文中,但是当您尝试加载邮件时,它只显示一个“?”

这可能是使用中的字符集的问题吗?我发现了这个:

// The charset to use for displaying special characters.
$PHORUM["DATA"]['CHARSET']="UTF-8";

1 个答案:

答案 0 :(得分:1)

根据此页面:mathiasbynens.be,“MySQL的utf8字符集仅部分实现了正确的UTF-8编码。它只能存储由一到三个字节组成的UTF-8编码符号;编码符号占用不支持四个字节。“

在mysql中执行这个sql: ALTER DATABASE database_name CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;