emoji昵称php,php过滤微信用户昵称emoji表情方法汇总 - 旗云号
php过滤微信用户昵称emoji表情方法汇总
微信用户昵称带emoji表情的话,保存数据库会报错,解决办法有两种:一、修改数据库表和字段的字符集为utf8mb4;二、过滤emoji表情字符;根据自己的需求来选择。
这里主要介绍第二种方法,PHP过滤昵称表情这里主要有如下四种:
public function test() {
//$str = "爱心\uD83E\uDD14";
$str = "爱心爱心?";
// echo $this->emoji_encode($str);
// echo $this->filterNickname($str);
// echo $this->filterEmoji($str);
echo $this->emoji_encode(json_encode(json_decode($str)))."|";
echo $this->filterNickname(json_encode($str))."|";
echo $this->filterEmoji(json_encode($str))."|";
}
function filterEmoji($str)
{
$str = preg_replace_callback( '/./u',
function (array $match) {
return strlen($match[0]) >= 4 ? '' : $match[0];
},
$str);
return $str;
}
private function emoji_encode($nickname){
$strEncode = '';
$length = mb_strlen($nickname,'utf-8');
for ($i=0; $i < $length; $i++) { $_tmpStr = mb_substr($nickname,$i,1,'utf-8'); if(strlen($_tmpStr) >= 4){
$strEncode .= '[[EMOJI:'.rawurlencode($_tmpStr).']]';
}else{
$strEncode .= $_tmpStr;
}
}
return $strEncode;
}
function filterNickname($nickname) {
$nickname = preg_replace('/[\x{1F600}-\x{1F64F}]/u', '', $nickname);
$nickname = preg_replace('/[\x{1F300}-\x{1F5FF}]/u', '', $nickname);
$nickname = preg_replace('/[\x{1F680}-\x{1F6FF}]/u', '', $nickname);
$nickname = preg_replace('/[\x{2600}-\x{26FF}]/u', '', $nickname);
$nickname = preg_replace('/[\x{2700}-\x{27BF}]/u', '', $nickname);
$nickname = str_replace(array('"','\''), '', $nickname);
return addslashes(trim($nickname));
}
旗云号 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php过滤微信用户昵称emoji表情方法汇总
emoji昵称php,php过滤微信用户昵称emoji表情方法汇总 - 旗云号相关推荐
- mysql 微信昵称怎么保存_mysql 微信用户昵称emoji 完整保存
微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为mysql只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...
- mysql存储用户昵称_mysql 微信用户昵称 emoji 完整保存 - 人人都是架构师
微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为mysql只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...
- mysql 微信用户昵称 emoji 完整保存
微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为mysql只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...
- 微信昵称 mysql_mysql 微信用户昵称emoji 完整保存
微信用户昵称现在丰富多样,一些个性的名称中经常包含有特殊字符,以及emoji表情.起先,我总以为MySQL只能保存纯文本数据.但其实mysql(5.7版本)已非常强大,完整保存微信用户昵称(emoji ...
- 微信小程序抓包方法汇总
前言 ios端和mac用户可以忽略以下内容,本文针对于windows端和android端的微信无法抓取小程序数据包提出相关解决方案. 分析 Android7. 0及以上的系统中,每个应用可以定义自己的 ...
- win7设置计算机临时用户,Win7小技巧:用户账户自动登录方法汇总
Win7之家( www.win7china.com):Win7小技巧:用户账户自动登录方法汇总 为了计算机安全,相信使用Windows7系统的朋友大多都为自己的用户账户设置了或简单或复杂的密码,其实对 ...
- mysql数据库:微信用户昵称emoji 怎么保存到数据库中。
我单位的小姐姐 也满逗的 每次测试微信公众号 总会报错.如下图: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x91\xA ...
- 获取微信昵称乱码php,Android 微信登录昵称乱码问题,及获取微信用户信息
微信第三方登录时昵称,username乱码问题解决方法如下: /** * 获取微信用户信息 * @param access_token 调用凭证 * @param openid 普通用户的标识,对当前 ...
- php 过滤微信符号昵称,PHP方法处理微信昵称特殊符号过滤
我们在通过PHP获取微信昵称,并且存于数据库的时候,由于一些昵称带有特殊符号,所以存不进去,这时候我们可以通过下面的方式来处理. 方法二 protected function removeEmoji( ...
最新文章
- 蓝凌ekp开发_蓝凌EKP8.0产品白皮书(简).doc
- strcat()函数常见问题
- springboot处理参数再转发请求_SpringBoot是如何解析HTTP参数的
- 数据可视化|实验一 绘图基础语法和常用参数
- phpMyAdmin 尝试连接到MySQL 服务器的错误解决方法
- linux nginx 系统服务,linux 把nginx加入到系统服务的方法
- Kafka的消费语义
- 第三篇 层次类非线性表的编程实验 第10章 应用经典二叉树编程
- Oracle 10g RMAN 跨平台迁移
- 物联网培训总结(C#)
- 专业级频谱测试软件,手机频谱仪测试软件
- C语言链表详解(通俗易懂)
- ps怎么对比原图快捷键_ps快捷键对比
- 行人重识别论文阅读7-基于图卷积的行人骨架识别
- 卡通渲染的3D电影《苹果核战记》
- 经验 | 本硕985回忆研究生这三年
- Python 打字小游戏开发,来体验不一样的打字游戏乐趣(第一篇)
- Matlab Plot添加图名、图例、坐标轴名、坐标网格;画虚线、点划线、两条线;更改字体、字号、轴正方
- [pandas] DataFrame 取指定列为某些值的行
- 三大巨头遥遥领先!亚马逊云服务领跑亚太第一,阿里微软紧随其后,腾讯谷歌百度进入前六 | 美通社头条...
热门文章
- Springboot毕业设计毕设作品,学生信息管理和新生报到系统 开题报告
- _ 10. 控制器和存储器一起组成了计算机核心——中央处理器,安徽2014年会计从业资格考试试题:会计电算化(第一套)...
- 说说IT企业固定资产管理系统的问题和解决方法
- 在ABP中通过EF直接执行原生Sql的解决方案
- 获取微博内容的文字以及表情
- FilterSecurityInterceptor源码解读
- 聚能聊每周精选 第十九期
- 对付“网络特工”软件的无可奈何的方法
- 微信小程序Canvas绘制曲线图饼图柱状图雷达图蛛网图实现(附源码)
- 点开,看一段,你就会喜欢上学习pandas,你该这么学!No.3