mysql数据库存入Emoji 图标
大家有没有做过微信公众号或者微信小程序的开发。会遇到一个问题,就是error:40163 code been used,很有可能就是因为你的微信昵称有Emoji图标哦!(当然这可能不是唯一的原因,但也是原因之一。)
分析原因:
1.数据库中的微信用户表nickname字段的编码是utf8.
2.连接数据库的时候用的编码是utf8;
把这个地方的编码都修改成utf8mb4就OK了。
这是由于字符集不支持的异常,因为utf-8编码有可能是两个,三个,四个字节,其中Emoji表情是四个字节,而mysql的utf-8编码最多三个字节,所以导致数据插不进去。
解决办法:
第一步:
还没解决?看一下连接数据库的代码是否用了utf8。我这边以tp5为例
两个地方搞完应该就没有什么问题了。