php + js 移動端 過濾emoji表情符號 完美解決

最近小編開發(fā)微信的時候突然會因為一些莫名奇妙的問題所困惑,下面舉例說明

微信獲取關(guān)注用戶的用戶名 經(jīng)常會有用戶的昵稱帶有emoji特殊表情符號,因為好看帥裝逼用嘛,就因為這樣給很多微信開發(fā)的技術(shù)帶來了很多不必要的困惑。因為你發(fā)現(xiàn)為什么在獲取用戶時候出現(xiàn)插入用戶資料失敗等問題?

不多說了進行問題解答???

第一種方法 后端 ?php 端過濾emoji 表情符號方法?

通過正則來過濾emoji表情符號的方法,很完美的解決了問題

/*

保留字符串中的字母、數(shù)字、下劃線、小數(shù)點,短橫線。

*/

public function strGuolv($str)

{

preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str, $matches);

return $str;

}

第二種方法 js 前端過濾emoji表情符號

常常用于textarea ?input ?文本的輸入校驗。

在js 里加入這個方法,通過傳入字符串str ?即可實現(xiàn)前端的數(shù)據(jù)過濾掉emoji的表情符號,完美解決,已測試通過。

function emoji2Str (str) {

return unescape(escape(str).replace(/\%uD.{3}/g, ''));

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 工廠模式類似于現(xiàn)實生活中的工廠可以產(chǎn)生大量相似的商品,去做同樣的事情,實現(xiàn)同樣的效果;這時候需要使用工廠模式。簡單...
    舟漁行舟閱讀 7,808評論 2 17
  • 單例模式 適用場景:可能會在場景中使用到對象,但只有一個實例,加載時并不主動創(chuàng)建,需要時才創(chuàng)建 最常見的單例模式,...
    Obeing閱讀 2,092評論 1 10
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,820評論 25 708
  • 有人說寂寞 會傳染 思念 有始有終 也有人說寂寞 是一根金色弦 直達心靈深處 讓內(nèi)心的真實,最接近人生的真諦 他們...
    江城妖怪閱讀 228評論 0 3
  • 最近用tcpdump抓包時,經(jīng)常需要用到tcp、ip等網(wǎng)絡(luò)協(xié)議,在此記錄下,備忘;在網(wǎng)絡(luò)上找了下,發(fā)現(xiàn)roclin...
    allanYan閱讀 1,260評論 0 0