PHP如何过滤Emoji表情?
微信和QQ两大即时通讯软件已经培养了用户频繁使用Emoji表情的习惯,现在就连各大输入法都支持直接输入Emoji表情了。
所以为了避免用户提交的信息中含有Emoji表情,我们在开发系统的时候,遇到需要用户填写信息,提交资料的情况,就需要在后端对用户提交的信息进行过滤。今天就给大家分享一个PHP过滤emoji表情的实际案例。
我们先准备一个含有Emoji表情的字符串,变量名称为$str_emoji。
1
2
|
$str_emoji = "999u{1F60E}u{1F60E}哈哈u{1F60E}u{1F60E}555" ; echo $str_emoji ; |
运行后输出的结果如下图:
1
2
3
4
5
6
7
8
9
10
11
|
// 然后我们加入下面这个过滤emoji表情的函数 function filterEmoji( $str ) { $str = preg_replace_callback( '/./u' , function ( array $match ) { return strlen ( $match [0]) >= 4 ? '' : $match [0]; }, $str ); return $str ; } echo filterEmoji( $str_emoji ); |
再次打印,输出的结果如下:
999哈哈555
千行代码,Bug何处藏。 纵使上线又怎样,朝令改,夕断肠。