項目開發中經常會遇到用戶在評論或者發表文章的時候會打一些表情在裡面,如果我們在開發中不去做一些處理的話,表情會出不來的,甚至是報錯,下麵簡單介紹處理方式. 項目中評論或者文章中寫入表情符號時,php報錯,或者出來時一些????。這是為什麼呢? 下麵說一下mysql中的字元集: mysql資料庫... ...
項目開發中經常會遇到用戶在評論或者發表文章的時候會打一些表情在裡面,如果我們在開發中不去做一些處理的話,表情會出不來的,甚至是報錯,下麵簡單介紹處理方式.
原文地址:
小時刻個人博客:http://small.aiweimeng.top/index.php/archives/Emoji.html
項目中評論或者文章中寫入表情符號時,php報錯,或者出來時一些????。這是為什麼呢?
下麵說一下mysql中的字元集:
mysql資料庫表用的utf-8字元集也就是3位元組,但emoji表情是4位元組,導致無法insert.
怎麼讓mysql支持Emoij表情呢?
我們可以設置mysql的對應的表字元集為```utf8mb4```,排序規則改為```utf8mb4_unicode_ci```,記得修改之後重啟mysql。
好了問題來了,我們修改完字元集後,進行測試。我想應該不會有問題,insert能寫入了,
但是出來的數據是```????```,why?
項目開的時候資料庫鏈接字元集預設是```utf8```,好了找到問題了,然後修改字元集為```utf8mb4```,O(∩_∩)O,
在進行測試,ok,完美解決了。