emoji就是表情符号,在手机里面已经是很流行使用的一种表情。
面临问题:
插入Emoji表情,保存到数据库时报错:
SQLException: Incorrect string value: '\xF0\x9F\x98\x84' for column 'review' at row 1
UTF-8编码有可能是两个、三个、四个字节。Emoji表情是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。
解决方案:
1、修改数据表结构中的字符集为 utf8mb4,但是此变动比较大,对于已发布在线的产品影响很大。
2、把它过滤掉,或者用UBB代替,这是我使用在项目中的方法,使用参考 https://github.com/newjueqi/converemojitostr
refer:
emoji处理方式大起底:http://blog.csdn.net/ugg/article/details/44225723
PHP-emoji转换表:http://code.iamcal.com/php/emoji/
以上就介绍了PHP 处理移动端emoji表情,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。