微信開發(fā)時(shí)候,有些用戶使用Emoji表情作為用戶昵稱歉糜,導(dǎo)致數(shù)據(jù)庫保存昵稱時(shí)候不識(shí)別導(dǎo)致昵稱為空乘寒,現(xiàn)在提出以下解決方案:
/**
+----------------------------------------------------------
* 過濾用戶昵稱里面的特殊字符
+----------------------------------------------------------
* @param string $str 待輸出的用戶昵稱
+----------------------------------------------------------
*/
function jsonName($str) {
if($str){
$tmpStr = json_encode($str);
$tmpStr2 = preg_replace("#(\\\ud[0-9a-f]{3})#ie","",$tmpStr);
$return = json_decode($tmpStr2);
if(!$return){
return jsonName($return);
}
}else{
$return = '微信用戶-'.time();
}
return $return;
}
另外,如果是用mysql 數(shù)據(jù)庫的話匪补,可以用utf8mb4 字符集伞辛。