MYSQL 寫入emoji表情字元處理

2022-07-29 12:09:10 字數 876 閱讀 3301

這個鬼emoji表情是4個位元組,mysql使用的utf8編碼,utf8佔3個位元組,要儲存那個emoji表情需要將mysql編碼由uft8改為uft8的超集,utf8mb4;

改資料庫編碼容易引起大麵的亂碼災難。所以當遇到emoji字元表情的時候做特殊處理。網上也有很多處理方案,最後找到了乙個貼上位址和**: ,多謝

class emoji

/*** decode emoji in text

* @param string $text text to decode

*/public static function decode($text)

private static function convertemoji($text,$op) ])|[\x|\x|\x|\x|\x|\x|\x|\x|\x|\x|\x|\x][\x-\x]?|[\x-\x][\x-\x]?|[\x-\x][\x-\x]?|[\x-\x][\x-\x]?|[\x-\x][\x-\x]?|[\x-\x][\x-\x]?|[\x-\x][\x-\x]?|[\x-\x][\x-\x]?|[\x-\x][\x-\x]?|[\x-\x][\x-\x]?|[\x-\x][\x-\x]?/u',array('self',"encodeemoji"),$text);

}else)+/',array('self',"decodeemoji"),$text);

} }private static function encodeemoji($match)

private static function decodeemoji($text)

return $text;

}}

$nickname = emoji::decode($userinfo['nickname']);

mysql 儲存emoji表情

phenomenon 當儲存帶emoji表情的資料時,mysql提示儲存失敗。solution 更改對應欄位的字符集 alter table xx modify columnremarkvarchar 256 character set utf8mb4 collate utf8mb4 unicode...

MySQL 插入emoji 表情

create table doctoruserinfomation id intnot null auto increment comment 系統id userid varchar 28 comment unionid varchar 28 comment nickname varchar 64 ...

Mysql支援emoji表情

教程所示使用的是 github 倉庫,網速過慢的朋友請 原文 mysql 支援 emoji 表情。更多討論或者錯誤提交,也請移步。最近為部落格新增了emoji表情,所以需要資料庫支援utf8mb4編碼。伺服器安裝的資料庫是mysql 5.7。網上很多方法是通過命令列設定字符集編碼格式,但是經過嘗試,...