php emoji过滤,php + js 移动端 过滤emoji表情符号 完美解决

最近小编开发微信的时候突然会因为一些莫名奇妙的问题所困惑,下面举例说明

微信获取关注用户的用户名 经常会有用户的昵称带有emoji特殊表情符号,因为好看帅装逼用嘛,就因为这样给很多微信开发的技术带来了很多不必要的困惑。因为你发现为什么在获取用户时候出现插入用户资料失败等问题?

不多说了进行问题解答???

第一种方法 后端  php 端过滤emoji 表情符号方法

通过正则来过滤emoji表情符号的方法,很完美的解决了问题

/*

保留字符串中的字母、数字、下划线、小数点,短横线。

*/

public function strGuolv($str)

{

preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str, $matches);

return $str;

}

第二种方法 js 前端过滤emoji表情符号

常常用于textarea  input  文本的输入校验。

在js 里加入这个方法,通过传入字符串str  即可实现前端的数据过滤掉emoji的表情符号,完美解决,已测试通过。

function emoji2Str (str) {

return unescape(escape(str).replace(/\%uD.{3}/g, ''));

}

你可能感兴趣的:(php,emoji过滤)