微信昵称相关问题处理
将emoji标签转换成可以mysql存储的格式
function emojiToMysql($string){ $length=mb_strlen($string,'utf-8'); $str = ""; for($i=0;$i<$length;$i++){ $_tmpStr=mb_substr($string,$i,1,'utf-8'); if(strlen($_tmpStr)>=4){ $str.='[[EMOJI:'.rawurlencode($_tmpStr).']]'; }else{ $str.=$_tmpStr; } } return $str; }
将从mysql取出来的emoji转换成可显示格式
function mysqlToEmoji($string){ $strDecode=preg_replace_callback("/\[\[EMOJI:(.*?)\]\]/",function($matches){ return rawurldecode($matches[1]); },$string); return $strDecode; }
过滤微信昵称小图标
function removeEmoji($text) { $clean_text = ""; // Match Emoticons $regexEmoticons = '/[\x{1F600}-\x{1F64F}]/u'; $clean_text = preg_replace($regexEmoticons, '', $text); // Match Miscellaneous Symbols and Pictographs $regexSymbols = '/[\x{1F300}-\x{1F5FF}]/u'; $clean_text = preg_replace($regexSymbols, '', $clean_text); // Match Transport And Map Symbols $regexTransport = '/[\x{1F680}-\x{1F6FF}]/u'; $clean_text = preg_replace($regexTransport, '', $clean_text); // Match Miscellaneous Symbols $regexMisc = '/[\x{2600}-\x{26FF}]/u'; $clean_text = preg_replace($regexMisc, '', $clean_text); // Match Dingbats $regexDingbats = '/[\x{2700}-\x{27BF}]/u'; $clean_text = preg_replace($regexDingbats, '', $clean_text); return $clean_text; }