欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

thinkphp支持emoji , 并能存入mysql

程序员文章站 2022-05-17 14:26:53
...
Thinkphp环境下,Mysql存入Emoji
Thinkphp默认的utf8不支持Emoji,因为Emoji是unicode编码,每个Emoji占4个字节,只要把数据表和列的编码都改为utf8mb4即可。

Thinkphp默认的utf8不支持Emoji,因为Emoji是unicode编码,每个Emoji占4个字节,如下:
1、确保mysql版本大于5.3.3(支持utf8mb4)
2、把表字符集改为utf8mb4, 排列顺序为utf8mb4_general_ci
3、把字段字符集改为utf8mb4, 排列顺序为utf8mb4_general_ci

utf8mb4是utf8的延伸并向下兼容,记得备份。

有部分emoji还是显示为问号,参考下面:
修改数据连接配置 '数据库编码' 为:'DB_CHARSET'=> 'utf8mb4',
字段字符集 也需修改为 uf8mb4
才能正常存储!!!!