搜索热词

对于没有把表情等特殊字符考虑在内的系统,当向数据库写入emoji时,数据库就会报错,如下所示:

数据库写入emoji时报错

原因

emoji表情为4个字符,而一般MysqL的utf8编码最多3个字节,所以插入时就会报错。

前端解决方案

作为一个前端,自己能解决的,绝不麻烦后端同学。在前端,将emoji字符先使用encodeURIComponent进行转义,写入数据库,然后读取显示时,再使用decodeURIComponent进行解码。

更改数据库编码格式将MysqL的编码从utf8转换成utf8mb4。

从 MysqL 5.5.3 开始,MysqL 支持一种 utf8mb4 的字符集,这个字符集能够支持 4 字节的 UTF8 编码的字符。 utf8mb4 字符集能够完美地向下兼容 utf8 字符串。在数据存储方面,当一个普通中文字符存入数据库时仍然占用 3 个字节,在存入一个 Unified Emoji 表情的时候,它会自动占用 4 个字节。所以在输入输出时都不会存在乱码的问题了。

要使用 MysqL 的这个特性,首先需要把 MysqL 升级到 5.5.3 以上的版本。其次,需要修改数据结构中的字符集为 utf8mb4 ,如 utf8mb4_general_ci 。由于 utf8mb4 是 utf8 的超集,从 utf8 升级到 utf8mb4 不会有任何问题,直接升级即可;如果从别的字符集如 gb2312 或者 gbk 转化而来,一定要先备份数据库。然后,修改 MysqL 的配置文件 /etc/my.cnf,修改连接默认字符集为 utf8mb4 ,如果是自己写的 PHP 脚本,也可以在连接数据库以后首先执行一句 sql: SET NAMES utf8mb4;。这时候,PHP 应该就可以正常保存 Emoji 到数据库了。对于数据库配置不是很懂,以上摘抄自博文emoji写入数据库报错处理的方法参考1、encodeURIComponent2、emoji写入数据库报错处理的方法

可以通过扫码识别小程序体验下

亲测可以正常展示emoji,如果有没有解决的,可以在评论区域留言。

总结

以上是编程之家为你收集整理的微信emoji昵称展示乱码问题全部内容,希望文章能够帮你解决微信emoji昵称展示乱码问题所遇到的程序开发问题。

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

php emoji 乱码,微信emoji昵称展示乱码问题相关推荐

  1. android dat 乱码,微信dat文件打开乱码

    微信dat转码软件使用操作说明在线解码,各位同学下载软件后,如何操作?如何找到dat文件?如何使用?又有哪些注意事项呢?这里会为大家一一道来.问题1 :如果下载失败怎么办?请先检查网络,软件并没有放在 ...

  2. 微信昵称乱码 mysql_微信网页开发获取用户昵称乱码 微信昵称包含emoji表情乱码的解决方案...

    微信网页开发获取用户昵称乱码 微信昵称包含emoji表情乱码的解决方案如下: 问题产生原因:由于数据库及属性一致设为utf8,而utf8只支持1-3个字节.当用户昵称为emoji表情时,获取用户基本信 ...

  3. mysql存储用户昵称_mysql 微信用户昵称 emoji 完整保存 - 人人都是架构师

    微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为mysql只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...

  4. mysql 微信用户昵称 emoji 完整保存

    微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为mysql只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...

  5. emoji昵称php,php过滤微信用户昵称emoji表情方法汇总 - 旗云号

    php过滤微信用户昵称emoji表情方法汇总 微信用户昵称带emoji表情的话,保存数据库会报错,解决办法有两种:一.修改数据库表和字段的字符集为utf8mb4:二.过滤emoji表情字符:根据自己的 ...

  6. 微信昵称 mysql_mysql 微信用户昵称emoji 完整保存

    微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为MySQL只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...

  7. mysql 微信昵称怎么保存_mysql 微信用户昵称emoji 完整保存

    微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为mysql只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...

  8. 微信彩色昵称,表情emoji,手持弹幕,空白昵称消息小程序搜索:在线实用工具箱

    小程序搜索:在线实用工具箱 或扫描下方小程序码. 首页:汉子查拼音,转二维码,手持弹幕,彩色昵称,emoji表情,空白昵称小程序功能 我的页面

  9. php微信Emoji表情处理

    一.适用场景 通过代码实现微信Emoji表情处理. 二.相关代码 1.字节转Emoji表情 /*** 字节转Emoji表情* @author php_elephant* @param $cp 数据* ...

  10. python玩转emoji ????(微信又“偷偷”更新了这个表情)

    1999年,emoji 正式诞生: 2007年,谷歌向维护不同平台和语言符号文字标椎化的统一码联盟发起提议,希望统一码联盟能出面标准化 emoji: 2009年,emoji 表情被纳入因特网 Unic ...

最新文章

  1. CImage与OpenCV兼容问题
  2. C++ 的基础概念(3)——多态详解。
  3. linux的i o模型,浅谈Linux 网络 I/O 模型简介(图文)
  4. CentOS6.x 下 LNMP环境搭建(二、安装 Nginx)
  5. BigDecimal类的常用算法
  6. python和java选择哪个-python与java,该选择哪一个?
  7. 在VMware Workstation 9中安装Mac OS X 10.8 Mountain Lion
  8. SQL 语句 - Select(6): 字段运算
  9. altium designer 常用元件封装
  10. 在全志平台调试博通的wifi驱动(类似ap6212)
  11. 推荐一个Firefox的扩展——IE Tab
  12. 算法学习笔记12:散列表
  13. 源领域和目标领域过程相似性分析
  14. .net core 集成skywalking
  15. 端午百望山爬山活动-金山词霸运营团队活动
  16. HMS Core Insights第三期直播预告—— 当我们在谈论App的时候,我们还可以谈论什么?
  17. mysql 抢票_PHP 高并发、抢票、秒杀 解决方案
  18. 华为:当丑小鸭变成黑天鹅?
  19. 零钱模拟器微信小程序源码下载
  20. 【贝壳】(算法工程师)采木【Python】

热门文章

  1. 3cdaemon漏洞挖掘 Exploit
  2. 如何下载安定门街道卫星地图高清版大图
  3. android系统查看wifi密码,安卓手机如何查看WIFI密码
  4. SMOTE过采样算法
  5. acm竞赛题库与解析
  6. debian dos2unix
  7. 安卓吃鸡玩家专属:教你电脑玩刺激战场匹配手机最简单的方式
  8. vivo手机自启动及定时开关机
  9. 采用泰克示波器TBS2000和TCP0030A电流探头准确评估高速DCDC转换器电感的选择
  10. 基于算术优化算法的函数寻优算法