是因为\xF0\x9F\x90\xB6 它通常是4个字符存储,而mysql的utf8默认是3个字符存储。
1、 更改代码中数据库连接的字符编码charset为utf8mb4
MYSQL_CHARSET = 'utf8mb4'
2、将数据库字符集编码页改成utf8mb4。
3、检查数据表的字符编码,保持同步。
4、最后确认数据表中的字段,存储这种特殊文字的字段字符编码也是utf8mb4
alter table jw_crm_article modify column content longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT '文章内容';