微信昵称乱码 mysql_微信网页开发获取用户昵称乱码 微信昵称包含emoji表情乱码的解决方案...
微信网页开发获取用户昵称乱码 微信昵称包含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表情导致乱码的问题,我采用的是第二种方法,目前没发现什么其他的问题。
微信昵称乱码 mysql_微信网页开发获取用户昵称乱码 微信昵称包含emoji表情乱码的解决方案...相关推荐
- 微信小程序通过web-view网页授权获取用户公众号OpenID
小程序中实现网页授权获取微信公众号OpenID 1.准备工作 2.应用场景说明 3.实现步骤 结语 1.准备工作 第一步: 通过该地址https://mp.weixin.qq.com/debug/cg ...
- Java微信公众号开发之网页授权获取用户基本信息
本篇博客讲解的网页授权只需要前端传递一个backUrl(回调地址) 到后台接口,后台接口会完成整个授权流程,无需前端做更多工作: 一. 前言 微信公众号开发,需要用到网页授权获取用户信息,通过OAut ...
- 微信开发之网页授权获取用户基本信息
微信官方文档:网页授权获取用户基本信息 具体而言,网页授权流程分为四步: 1.引导用户进入授权页面同意授权,获取code https://open.weixin.qq.com/connect/oaut ...
- asp.net mvc C# 微信公众号-服务号开发 (用户网页授权获取用户昵称头像信息)...
参考文档:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432 一.安装Senparc.Weixin NuGet包 ...
- 第八篇 :微信公众平台开发实战Java版之如何网页授权获取用户基本信息
第一部分:微信授权获取基本信息的介绍 我们首先来看看官方的文档怎么说: 如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑. 关于网页授权回调域 ...
- 微信开发网页授权获取用户信息
如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑. 1. 关于OAuth2.0的说明 官方网站:http://oauth.net/ htt ...
- 微信开发_网页授权获取用户的基本信息
如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑. 关于OAuth2.0的说明 官方网站:http://oauth.net/ http:/ ...
- 微信公众号开发之微信网页授权获取用户个人信息
说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 一丶概述 微信网页授权 如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑 ...
- 微信开发 网页授权获取用户基本信息
微信公众平台最近新推出微信认证,认证后可以获得高级接口权限,其中一个是OAuth2.0网页授权,很多朋友在使用这个的时候失败了或者无法理解其内容,希望我出个教程详细讲解一下,于是便有了这篇文章. 一. ...
最新文章
- Apache ZooKeeper - FourLetterCommands运维命令
- BZOJ3075[USACO 2013 Mar Gold 3.Necklace]——AC自动机+DP
- 2020-11-28 Latex相关小工具
- [react] react兄弟组件如何通信?
- fastJson toJSONString注意点
- 取文件 shell_webshell文件上传分析溯源
- 别再拿div+css误导人了
- zabbix4.0 mysql本地数据库迁移到腾讯云数据库
- Java Web从前端到后台常用框架介绍
- bootstrap入门之Code代码显示
- PackageInstaller 5.0源码分析静默安装与静默卸载
- cad两直线相交画圆弧_cad制图中两个圆相交于一条直线怎么画
- 优先使用组合而不使用继承
- Java基本sql_SQL基本语句
- EasyGUI-6:文件目录和异常
- 连续剧网页服务器搭建,电影服务器的架设及其安全防范配置流媒体服务器 -电脑资料...
- Unity Shader Dither
- 阿里云DDoS防护和DDoS高防有什么区别
- 通过RSA和DES实现网络报文加密加签(实例)
- linux系统命令梳理