tp5對emoj進行處理並保存到數據庫

數據庫編碼格式使用utf8mb4即可 存入時先使用emoji_encode對內容進行編碼
讀取返回前端時使用emoji_decode解碼即可。

//對emoji表情轉義
function emoji_encode($str) {
    $strEncode = '';
    $length = mb_strlen($str, 'utf-8');
    for ($i = 0; $i < $length; $i++) {
        $_tmpStr = mb_substr($str, $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;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章