$tmp=explode('_',$re['r_text']);
成都創(chuàng)新互聯(lián)公司于2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元漯河做網(wǎng)站,已為上家服務(wù),為漯河各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792
$img='img src="images/exp/'.$tmp[1].'.png"';
$text[]=$img;
1、使用utf8mb4字符集
如果你的mysql版本=5.5.3,你大可直接將utf8直接升級為utf8mb4字符集
這種4字節(jié)的utf8編碼可完美兼容舊的3字節(jié)utf8字符集,并且可以直接存儲emoji表情,是最好的解決方案
至于字節(jié)增大帶來的性能損耗,我看過一些評測,幾乎是可以忽略不計的
2、使用base64編碼
如果你因為某些原因無法使用utf8mb4的話,你還可以使用base64來曲線救國
使用例如base64_encode之類的函數(shù)編碼過后的emoji可以直接存儲在utf8字節(jié)集的數(shù)據(jù)表中,取出時decode一下即可
3、干掉emoji表情
emoji表情是個麻煩的東西,即使你能存儲,也不一定能完美顯示。在iOS以外的平臺上,例如PC或者Android。如果你需要顯示emoji,就得準備一大堆emoji圖片并使用第三方前端類庫才行。即便如此,還是可能因為emoji圖片不夠全而出現(xiàn)無法顯示的情況在大多數(shù)業(yè)務(wù)場景下,emoji也不是非要不可的。我們可以適當?shù)乜紤]干掉它,節(jié)約各種成本
經(jīng)過一番苦苦的google,終于找到靠譜能用的代碼:
img src="face/01.gif " onclick="document.forms[0].留言框名.value+='{{01}}';"
然后在PHP中處理數(shù)據(jù)
$memo=preg_replace("/{{(\d)}}/","img src="face/\$1.gif "",$memo);
你插入數(shù)據(jù)的時候?qū)懙膇nsert中字段數(shù)據(jù)的編碼不對。你要轉(zhuǎn)換成相應(yīng)的字符編碼才可以的。
?php
header("Content-type:text/html;charset=utf8");
//你的代碼
//也可以用notepad++將文件格式改為UTF8
?
插入數(shù)據(jù)庫需要
1
mysql_query("SET NAMES UTF8");
舉個例子input type="radio" name="face" value="gx"/高興(表情圖片)
input type="radio" name="face" value="fn"/憤怒(表情圖片)
input type="radio" name="face" value="dx"/大笑(表情圖片)
input type="radio" name="face" value="wl"/高興(表情圖片)
把value存進數(shù)據(jù)庫就行!
然后讀取的時候?php echo "img src=\"$face\."\.gif"\"";?
這個需要js配合。先把圖片放在特定的目錄。然后通過代碼調(diào)用。