微信昵称中含有emoji字符等特殊符号时引起的存储问题


问题:当PHP获取微信昵称并保存在数据库中,会报错;当然待从数据库中读取时只能是空的。

原因:查询得知,一般数据库字体编码为utf-8, 3字节, emoji为unicode编码,4字节,数据库插入不成功,只能报错

解决1:数据库编码选择utf8mb4字符集,适用于全新数据库

解决2:在插入数据时,将可能包含特殊符号的字符串编码(utf8_encode),从数据库读取数据时,同样字段进行解码(utf8_decode)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM