处理微信昵称中带表情符无法存到数据库问题。数据库需要加长微信昵称字段长度
/**对emoji表情转义
* @param $nickname
* @return string
*/
function emoji_encode($nickname)
{
$strEncode = '';
$length = mb_strlen($nickname, 'utf-8');
for ($i = 0; $i < $length; $i++) {
$_tmpStr = mb_substr($nickname, $i, 1, 'utf-8');
if (strlen($_tmpStr) >= 4) {
$strEncode .= '[[EMOJI:' . rawurlencode($_tmpStr) . ']]';
} else {
$strEncode .= $_tmpStr;
}
}
return $strEncode;
}
//对emoji表情转反义
function emoji_decode($str)
{
$strDecode = preg_replace_callback('|\[\[EMOJI:(.*?)\]\]|', function ($matches) {
return rawurldecode($matches[1]);
}, $str);
return $strDecode;
}
---------------------
作者:等灯等灯
来源:优快云
原文:https://blog.youkuaiyun.com/qq_36180117/article/details/80846599
版权声明:本文为博主原创文章,转载请附上博文链接!