微信昵称mysql utf8 mb4空白
因为:微信昵称中包含emoji表情标签,某些标签是使用了4字节编码的utf8。
而大多数mysql数据库现在使用的是3字节utf8编码,这样会导致保存为空,且不会提示失败。
解决方法:
方案一:升级到mysql5.5+版本,支持utf8mb4编码格式,然后执行下面的变更语句:
altertable表名converttocharactersetutf8mb4collateutf8mb4_bin;
这样可以完整保存用户昵称,但系统升级风险较大,需要多方面测试。
方案二:另外一个方法更容易,就是去除非3字节的特殊符号,
$nickname=preg_replace('/[\x{10000}-\x{10ffff}]/u','',$nickname);
缺点是这会导致读取显示的时候少了那些漂亮的图标。
【建站知识】搭建一个网站的全部步骤如何稳定优化乐山关键词排名网站建设应该如何保证高质量的内容APP开发,你可能会遇到这些问题单页面网站优化得天独厚优势网络推广方式整理二企业网站建设架构拓扑图参考做好百度引擎竞价正确的思绪是关头