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
才能正常存储!!!!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号