让应用程序支持emoji字符 廖雪峰 / 编程 / 2017-4-20 22:01 / 阅读: 5051 什么是emoji?就是这些表情和符号:
2018-01-09 16:59
453 查看
让应用程序支持emoji字符
廖雪峰 /
编程 / 2017-4-20 22:01 / 阅读: 5051
什么是emoji?就是这些表情和符号:
?????????
自iPhone从iOS 5在输入法中开始支持emoji以来,这些表情符号迅速风靡世界。但是很多Web网站竟然还不!支!持!!!
那怎么才能支持emoji呢?其实代码一行都不用改,因为emoji符号实际上是文本,并不是图片,它们仅仅显示为图片而已。而且,emoji符号已经被标准化并编码到最新的Unicode标准中了,所以,要支持emoji,只需要底层软件系统支持就可以了。
服务器端要正确存储emoji符号,只需要确保Web程序和底层数据库能支持最新的Unicode标准就可以了。
如果使用MySQL作为数据库,需要升级到5.5.3或更新的版本,然后,把默认编码从原来的utf8改为utf8mb4,在
my.cnf或者
my.ini配置文件中修改如下:
[client] default-character-set = utf8mb4 [mysqld] character-set-server = utf8mb4 collation-server = utf8mb4_general_ci
重启MySQL,然后使用以下命令查看编码,应该全部为
utf8mb4(character_set_filesystem和character_set_system除外):
mysql> show variables like '%char%'; +--------------------------+--------------------------+ | Variable_name | Value | +--------------------------+--------------------------+ | character_set_client | utf8mb4 | | character_set_connection | utf8mb4 | | character_set_database | utf8mb4 | | character_set_filesystem | binary | | character_set_results | utf8mb4 | | character_set_server | utf8mb4 | | character_set_system | utf8 | | character_sets_dir | /usr/local/mysql-5.7.... | +--------------------------+--------------------------+ 8 rows in set (0.00 sec)
使用命令查看collation设置,应该全部是
utf8mb4_general_ci:
mysql> show variables like '%coll%'; +----------------------+--------------------+ | Variable_name | Value | +----------------------+--------------------+ | collation_connection | utf8mb4_general_ci | | collation_database | utf8mb4_general_ci | | collation_server | utf8mb4_general_ci | +----------------------+--------------------+ 3 rows in set (0.01 sec)
如果
character_set_database还是为
utf8,需要重启服务器。
现在,MySQL就可以正确存储emoji字符了。
Web软件
要支持emoji,需要Web软件也支持。目前,已知支持emoji的包括:
Java 8
Node
最后,如果你的Web应用程序没有使用标准的UTF-8编码,而是使用了GBK等编码,想要支持emoji就只能呵呵了
相关文章推荐
- myql设置utf8mb4字符,使支持emoji 表情符号
- MySQL utf8mb4 字符集:支持 emoji 表情符号
- Mysql之——支持emoji 表情符号 升级编码为UTF8MB4
- MySQL utf8mb4 字符集:支持 emoji 表情符号
- mysql 支持emoji 表情字符的解决方法。
- MySQL utf8mb4 字符集:支持 emoji 表情符号
- Object-c 中截取包含(中、英文、表情符号emojiicon)混合字符串的每个字符并获取此字符的unicode值
- 让应用程序支持emoji字符
- MySQL utf8mb4 字符集:支持 emoji 表情符号
- MySQL修改字符集为utf8mb4以支持 emoji 表情符号
- MySQL utf8mb4 字符集:支持 emoji 表情符号
- php过滤文字中的表情字符和mysql服务端对emoji的支持
- MySQL utf8mb4 字符集:支持 emoji 表情符号
- Mysql支持emoji 表情符号 升级编码为UTF8MB4
- MySQL utf8mb4 字符集:支持 emoji 表情符号
- Error LNK2001 无法解析的外部符号 的几种情况及解决办法 标签: mfc编译器编程c 2011-08-18 22:48 199753人阅读 评论(10) 收藏 举报 分类: Debug
- 【Java开发常见问题解决】文本框表情emoji字符过滤处理方法
- 【原创】《Linux高级程序设计》杨宗德著 - UDP网络编程应用 分类: Linux --- 应用程序设计 2014-12-11 14:41 73人阅读 评论(0) 收藏
- 【原创】《Linux高级程序设计》杨宗德著 - Linux多线程编程 - 线程属性控制 分类: Linux --- 应用程序设计 2014-11-30 20:54 68人阅读 评论(0) 收藏
- 学这些课程对编程有什么用