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

问题产生原因:由于数据库及属性一致设为utf8,而utf8只支持1-3个字节。当用户昵称为emoji表情时,获取用户基本信息时会乱码。

解决方案一:修改数据库为支持4个字节的utf8mb4编码即可正常存储emoji表情等特殊符号。

1.升级mysql到支持utf8mb4编码的最低版本5.5以上。

2.更改mysql设置,更改/etc/my.cnf配置文件。

3.修改mysql配置文件,在[client]加入default-character-set=utf8mb4;在[mysqld]加入character_set_server = utf8mb4;

4.重启mysql数据库。把要插入特殊表情的数据库、表、字段的编码改成utf8mb4。

解决方案二:将获取的微信昵称等进行urlencode转码之后再存储到数据库中,显示的时候再做urldecode操作。

$nickname = urlencode($nickname);

nickname = urldecode($nickname);

解决方案三:将获取的微信昵称中的特殊符号过滤掉。

public static function removeEmoji($text) {

$clean_text = "";

// Match Emoticons

$regexEmoticons = '/[\x{1F600}-\x{1F64F}]/u';

$clean_text = preg_replace($regexEmoticons, '', $text);

// Match Miscellaneous Symbols and Pictographs

$regexSymbols = '/[\x{1F300}-\x{1F5FF}]/u';

$clean_text = preg_replace($regexSymbols, '', $clean_text);

// Match Transport And Map Symbols

$regexTransport = '/[\x{1F680}-\x{1F6FF}]/u';

$clean_text = preg_replace($regexTransport, '', $clean_text);

// Match Miscellaneous Symbols

$regexMisc = '/[\x{2600}-\x{26FF}]/u';

$clean_text = preg_replace($regexMisc, '', $clean_text);

// Match Dingbats

$regexDingbats = '/[\x{2700}-\x{27BF}]/u';

$clean_text = preg_replace($regexDingbats, '', $clean_text);

return $clean_text;

}

以上三种方案都可以解决微信网页开发时微信昵称包含emoji表情导致乱码的问题,我采用的是第二种方法,目前没发现什么其他的问题。

微信接口昵称在服务器乱码,微信网页开发获取用户昵称乱码 微信昵称包含emoji表情乱码的解决方案...相关推荐

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

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

  2. 微信公众平台--服务号/订阅号--网页授权获取用户基本信息

    参考链接:https://www.cnblogs.com/admol/articles/4286487.html 注: 1.此为网页授权获取用户基本信息,必须为服务号,订阅号是没有权限通过网页授权来获 ...

  3. 微信公众号-菜单连接跳转网页,获取用户OpenId

    流程: 菜单跳转URL设置为(更改自己公众号的appid 以及设置点击按钮后跳转的地址:redirect_uri) https://open.weixin.qq.com/connect/oauth2/ ...

  4. Java微信公众号开发之网页授权获取用户基本信息

    本篇博客讲解的网页授权只需要前端传递一个backUrl(回调地址) 到后台接口,后台接口会完成整个授权流程,无需前端做更多工作: 一. 前言 微信公众号开发,需要用到网页授权获取用户信息,通过OAut ...

  5. uniapp微信小程序新版本获取用户的头像和昵称,手机号

    新版本微信小程序通过getUserInfo获取到用户的头像是灰色,昵称显示为微信用户,这是微信版本更新了,现在需要用getUserProfile来获取用户的头像和昵称,并且只能页面产生点击事件(例如 ...

  6. asp.net mvc C# 微信公众号-服务号开发 (用户网页授权获取用户昵称头像信息)...

    参考文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432 一.安装Senparc.Weixin NuGet包 ...

  7. 微信接口开发之高级篇系列【网页授权获取用户基本信息】

    PHP微信接口开发之高级篇之网页授权获取用户基本信息 二.WEB开发工具 转载于:https://www.cnblogs.com/tinywan/p/5860981.html

  8. 微信开发 网页授权获取用户基本信息

    微信公众平台最近新推出微信认证,认证后可以获得高级接口权限,其中一个是OAuth2.0网页授权,很多朋友在使用这个的时候失败了或者无法理解其内容,希望我出个教程详细讲解一下,于是便有了这篇文章. 一. ...

  9. Spring Boot 微信-网页授权获取用户信息

    微信-验证服务器有效性 微信-网页授权获取用户信息 网页授权获取用户信息步骤 第一步:用户同意授权,获取code 第二步:通过code换取网页授权access_token 第三步:拉取用户信息(需sc ...

  10. 在微信H5网页中获取用户基本信息

    在微信中访问一些HTML5网页时,我们常看到是否允许访问用户公开信息的提示.如果用户点击"允许",网页就可以获取到用户的头像以及昵称等信息. 如果把在网址拷贝出来,然后在非微信环境 ...

最新文章

  1. php final这个关键词代表什么,php面向对象之final关键字用法及实例
  2. freebsd 手工安装zabbix2.0 php,zabbix 服务端,子客户端安装配置日志
  3. SLAM: SLAM基本流程—VSLAM扫盲之旅
  4. 未来如何与计算机和谐相处,未来计算机将进入身体和大脑,大脑将和云连接
  5. 新人入职,上午写了一段代码,下午就被开除了
  6. Shell脚本实战:日志关键字监控+自动告警
  7. MySQL安装(详细,适合小白)
  8. 噪点测试软件 DeadPixelTest 使用方法
  9. vivo和OPPO手机刷机
  10. 微信公众号添加html,微信公众号如何在文章里添加超链接的方法教程
  11. 人大金仓数据库Centos 7 部署
  12. 数学分析教程 第十八章学习感受
  13. 蓝色动力(DVD版)GHOSTXP SP3纯净选择版V2012.06
  14. word批量设置图片大小和对齐,使用宏定义
  15. python 进化树_物种进化树构建
  16. Wechat----wxs
  17. html5猜大王游戏,5月8日维护:新副本金兜洞兕大王部分测试
  18. 安全多方计算之六:秘密共享
  19. 什么是集合,集合的定义,集合与数组的区别,怎么创建一个集合?
  20. %f在c语言中是什么意思,在C语言中,%d,%c,%f都是什么意思,请详细的说一下,谢谢了...

热门文章

  1. #12304;#9733;#28404;#28404;#37329;#34701;#23458;#26381;#30005;#35805;#9733;#12305;
  2. selenium+java打开新标签页方法
  3. 京东商品详情数据接口(APP端,H5端),实时了解商品价格走势,接口代码教程
  4. Indilinx主控固态量产成功修复步骤
  5. DTL autoescape
  6. Python爬虫--- 1.5 爬虫实践: 获取百度贴吧内容
  7. 霍乱时期的爱情——简写(下)
  8. 怎么给照片加水印?今天教你一个方法
  9. 操作系统进程同步例题(四)生产者-消费者问题
  10. 2GB显存畅玩 DeepFaceLab更新至2019.12.29