我正在使用Smarty传入并显示first_name变量的内容.一些用户在其中有表情符号字符(http://en.wikipedia.org/wiki/Emoji)first_name,我想知道如何a)有条件地不显示用户的,first_name如果它包含表情符号或b)过滤掉表情符号字符first_name.这可以用Smarty完成吗?可以在Smarty中使用PHP吗?
ome*_*net 11
表情符号在块U + 1F300-U + 1F5FF中编码.
preg_replace('/\xEE[\x80-\xBF][\x80-\xBF]|\xEF[\x81-\x83][\x80-\xBF]/', '', $first_name)
Run Code Online (Sandbox Code Playgroud)
这将剥夺这些
小智 7
我尝试了上面发布的一些解决方案,但没有人工作,但是,当我使用mb_函数将字符串转换为UTF-8时,它正常工作.
您可以使用:
trim( preg_replace('/[\x00-\x1F\x80-\xFF]/', '',
mb_convert_encoding( $emojiString, "UTF-8" ) ) );
Run Code Online (Sandbox Code Playgroud)
适合我.
| 归档时间: |
|
| 查看次数: |
8592 次 |
| 最近记录: |