在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
今天在用mysql存储从微信服务器拉来的数据,出现插入数据异常,报 Incorrect string value: '\xF0\x9F\x98\x97\xF0\x9F 的错误。
最终在网上查了一下,有几个解决方案:
方案一:
如果是用thinkphp开发的话,在tinhkphp config.php中连接数据库配置文件中 设置
'DB_CHARSET'=> 'utf8mb4', // 字符集 方案二:
把mysql数据库升级到5.5以上,然后数据库编码设置为utf8mb4,字段的编码最好也为utf8mb4。
问题:用户个人信息设置时使用emoji表情,MySQL如果不是utf8mb4会导致异常。
SHOW VARIABLES LIKE 'collation_%'; -----查看mysql 系统编码 SHOW VARIABLES LIKE 'char%'; SET NAMES utf8; ----相当于设置了 character_set_client、character_set_connection、character_set_results SET NAMES utf8mb4; SET character_set_client=utf8mb4; ----针对特殊字符 SET character_set_connection=utf8mb4;--针对特殊字符 SET character_set_results=utf8mb4; 总之,就是在character_set_client或者character_set_connection中,至少一个的编码为utf8mb4。 utf8mb4这种格式,就是为了兼容手机端的,比UTF-8多了好多格式,包括了UTF-8的格式。
|
2022-08-17
2022-07-18
2022-11-06
2022-08-17
2022-07-30
请发表评论