最近在用手机上的表情对某一个文章进行评论时,发现插入到数据库的语句出错了,
就是插入表情的那一句出的错
具体的解决方法是:
文章评论表:articleComment,我需要向其中的content字段中插入手机表情,
那么就在数据库中执行以下语句:
alter table articleComment convert to character set utf8mb4 collate utf8mb4_general_ci;
然后就能正常插入到数据库了,如果想让web页面显示正常的表情,需要网页头设置:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
最后显示的效果如下:(我在几个浏览器上测试了一下,IE11、firefox42、360浏览器兼容模式、google chrome 46.0.2490.71测试均没有问题
但是360浏览器的极速模式下显示不了表情,我的版本号为()
关于emoji表情与utf8mb4
关于emoji表情的话mysql的utf8是不支持,需要修改设置为utf8mb4,才能支持
MYSQL 5.5 之前, UTF8 编码只支持1-3个字节,只支持BMP这部分的unicode编码区, BMP是从哪到哪,到 http://en.wikipedia.org/wiki/Mapping_of_Unicode_characters 这里看,基本就是0000~FFFF这一区。 从MYSQL5.5开始,可支持4个字节UTF编码utf8mb4,一个字符最多能有4字节,所以能支持更多的字符集。
utf8mb4 is a superset of utf8
utf8mb4兼容utf8,且比utf8能表示更多的字符。