微信 昵称带 表情存入mysql数据库

Incorrect string value: '\xF0\x9F\x98\x84\xF0\x9F
  1. 修改表

ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;

原因是UTF-8编码有可能是两个、三个、四个字节。Emoji表情或者某些特殊字符是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。
或者直接数据库中修改字段的属性utf8mb4

  1. 对字符串进行 base64编码 存入, 取出时再解码

你可能感兴趣的:(微信 昵称带 表情存入mysql数据库)