前言
这篇应该算个小知识吧。平时习惯在写文章的时候都喜欢用 windows
的emoji
表情(win+.)
即可弹出,就如👨💻🏂🛌🛀🤽♂️⛹️♂️🤸♂️,还有、🏎🚠🛫💺🚀🛰⛵,这种🍟🍔🍿🌭🥞🥙🍰🥤🍸
之前开发的项目,没有存储过这种小表情,都是使用mysql的默认字符设置UTF-8,但是今天测试发现是行不通,从而就有了这篇小文章啦,希望能够让你有所收获。
📚一、UTF-8 为什么不支持Emoji表情
在一个utf-8表中所做测试,不支持插入数据中包含emoji表情的数据。
原因:MySQL数据库的 “utf8”并不是真正概念里的 UTF-8。目前可见字符集都只需要3个字节,包含了所有字符。但是问题出在unicode6系列编码上,它们需要4个字节,这部分就是有名的emoji。所以,如果我们的数据库使用默认字符设置,是无法存储emoji表情的。
📑二、UTF-8 与 UTF-8MB4 的区别
2.1、UTF-8 (Unicode)
我们