过滤特殊字符(包括过滤emoji表情)
/**
* 过滤特殊字符
* @param $text
* @return mixed
*/
public static function filterSpecialChars($text)
{
//过滤emoji表情
$a = json_encode($text);
$b = preg_replace("/\\\ud([8-9a-f][0-9a-z]{2})/i", "", $a);
$text = json_decode($b); //过滤特殊字符
$pattern = "/[\x{3400}-\x{4DB5}\x{4E00}-\x{9FA5}\x{9FA6}-\x{9FBB}\x{F900}-\x{FA2D}\x{FA30}-\x{FA6A}\x{FA70}-\x{FAD9}\x{FF00}-\x{FFEF}\x{2E80}-\x{2EFF}\x{3000}-\x{303F}\x{31C0}-\x{31EF}\x{2F00}-\x{2FDF}\x{2FF0}-\x{2FFF}\x{3100}-\x{312F}\x{31A0}-\x{31BF}\x{3040}-\x{309F}\x{30A0}-\x{30FF}\x{31F0}-\x{31FF}\x{AC00}-\x{D7AF}\x{1100}-\x{11FF}\x{3130}-\x{318F}\x{4DC0}-\x{4DFF}\x{A000}-\x{A48F}\x{A490}-\x{A4CF}\x{2800}-\x{28FF}\x{3200}-\x{32FF}\x{3300}-\x{33FF}\x{2700}-\x{27BF}\x{2600}-\x{26FF}\x{FE10}-\x{FE1F}\x{FE30}-\x{FE4F}0-9a-zA-Z—\x{21}-\x{7e}\x{00}-\x{ff}]/ui";
$filterStr = preg_replace($pattern, '', $text);
$filterPattern = addslashes("/" . $filterStr . "/ui");
return preg_replace($filterPattern, '', $text);
}
过滤特殊字符(包括过滤emoji表情)的更多相关文章
- 特殊字符,如Emoji表情Base64存储到数据库
有些特殊字符,如Emoji,存储到oracle数据库就会变成乱码,解决方案就是Base64转码后存储到数据库,取出后再解码传输,经过验证是可以的. 编码存储,接收参数转json再.ToString() ...
- PHP导出带有emoji表情的文本到excel文件出问题了
前段时间做了一个导出用户信息(包含微信昵称)到excel文件的功能,一直没问题,今天突然有人反馈说导出来的数据有一些丢失了.我试了一下,发现有些数据导出没问题,有些有问题,某些列出现了空白,数据打印出 ...
- 【转】【异常处理】Incorrect string value: '\xF0\x90\x8D\x83...' for column... Emoji表情字符过滤的Java实现
http://blog.csdn.net/shootyou/article/details/44852639 Emoji表情字符现在在APP已经广泛支持了.但是MySQL的UTF8编码对Emoji字符 ...
- python3 清除过滤emoji表情
python3 清除过滤emoji表情 方法一: emoji处理库,emoji官网:https://pypi.org/project/emoji/ #安装 pip install emoji 官方例子 ...
- java代码过滤emoji表情
可以新建一个过滤器的类,在类中书写如下代码: public static String filterEmoji(String source) { if(source != null ...
- java过滤emoji表情(成功率高)
转载自:http://blog.csdn.net/huangchao064/article/details/53283738 基本能过滤大部分的ios,安卓,微信emoji表情 有很多别的帖子搜出来很 ...
- Js 过滤emoji表情...持续补充中..
原文来自: https://www.cnblogs.com/tsjTSJ/p/7065544.html 最全最详细的用JS过滤Emoji表情的输入 在前端页面开发过程中,总会碰到不允许输入框输入e ...
- php过滤表单输入的emoji表情
1.过滤emoji表情的原因 在我们的项目开发中,emoji表情是个麻烦的东西,即使我们可以能存储,也不一定能完美显示,因为它的更新速度很快:在iOS以外的平台上,例如PC或者android.如果你需 ...
- PHP将emoji表情进行过滤
emoji表情是个麻烦的东西,不仅储存的时候需要处理,而且在PC的显示上需要三方的类库来处理.并且它还是经常更新.... 最近开发新项目的时候明确要求某个字段要过滤emoji表情,在网上找了个方法,亲 ...
随机推荐
- centos7部署fabric-ca错误解决
1.fabric-ca 编译错误:ltdl.h: no such file 在fabric-ca目录中使用make编译时,会出现如下错误: 解决方案: 如果在ubunt操作系统中,只需安装:apt i ...
- pom.xml实例
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/20 ...
- Python中self和__init__的含义与使用
原文地址https://blog.csdn.net/love666666shen/article/details/78189984 Python中的self 在Python中的类Class的代码中,常 ...
- 一步一步学Python(3) 基础补充
最近在系统学习Python,以MOOC上面的一套Python3的课程为基础.本文主要总结一下基础部分的关键点. 1.python基本数据类型 2.python运算符 3.构建简洁高效的IDE环境 4. ...
- catalog start with + switch database to copy的妙用
catalog start with + switch database to copy的妙用 环境:RHEL6.4 + Oracle 11.2.0.4 Primary RAC + Standby R ...
- 21.JQ的监听事件(点击div外面可以让它消失)
JQ的监听事件(点击div外面可以让它消失) //监听整个页面 $(document).bind("click", function() { //给需要的对象赋予事件 $(&quo ...
- gitlab8.2->8.16->8.17->9.0升级
注:不要跨过8.16升级至8.17,这样做升级过程会报错 ###################################8.2升级至8.16########################## ...
- sql 一列拼接成一行,再分割成列
原始数据,需要拼接成一行 select * from (select d.*,(SELECT count ([Keyword])FROM [DragonGuoShi].[dbo].[ArticleIn ...
- 十 js中forEach,for in,for of循环的用法
一.一般的遍历数组的方法: var array = [1,2,3,4,5,6,7]; for (var i = 0; i < array.length; i++) { console.log(i ...
- 强化学习--DDPG---tensorflow实现
完整代码:https://github.com/zle1992/Reinforcement_Learning_Game 论文<Continuous control with deep reinf ...