PHP Mysql字符集utf8mb4支持Emoji表情

项目中评论或者文章中写入表情符号时,php报错,或者出来时一些???。这是为什么呢?

下面说一下mysql中的字符集:

mysql数据库表用的utf-8字符集也就是3字节,但emoji表情是4字节,导致无法insert.

怎么让mysql支持Emoij表情呢?

我们可以设置mysql的对应的表字符集为utf8mb4,排序规则改为utf8mb4_unicode_ci,记得修改之后重启mysql。

好了问题来了,我们修改完字符集后,进行测试。我想应该不会有问题,insert能写入了,
但是出来的数据是????,why?

项目开的时候数据库链接字符集默认是utf8,好了找到问题了,然后修改字符集为utf8mb4,O(∩_∩)O,
在进行测试,ok,完美解决了。

添加新评论