大多数人创建数据库时都是直接选择utf8这个编码,但是MySQL的utf8存在一些问题,比如保存emoji表情的时候会乱码,因为mysql的utf8最大只支持3个字节,所以超过3字节的字符在保存时就会出现问题。在MySQL5.7开始新加了一个编码格式,叫utf8mb4,这个才是真正的utf8编码,所以有时候你遇到那种明明存了utf8编码,到数据库还是出现乱码的情况,可能就是这个问题导致的。
相关文章:
array(2) { ["docs"]=> array(0) { } ["count"]=> int(0) } 111string(0) "" int(1) int(10) int(70) int(8640000) string(13) "likecs_art_db" array(1) { ["query"]=> array(1) { ["match_all"]=> object(stdClass)#29 (0) { } } } array(1) { ["createtime.keyword"]=> array(1) { ["order"]=> string(4) "desc" } } int(10) int(0) int(8640000) array(2) { ["docs"]=> array(0) { } ["count"]=> int(0) }
大多数人创建数据库时都是直接选择utf8这个编码,但是MySQL的utf8存在一些问题,比如保存emoji表情的时候会乱码,因为mysql的utf8最大只支持3个字节,所以超过3字节的字符在保存时就会出现问题。在MySQL5.7开始新加了一个编码格式,叫utf8mb4,这个才是真正的utf8编码,所以有时候你遇到那种明明存了utf8编码,到数据库还是出现乱码的情况,可能就是这个问题导致的。
相关文章: