app后端设计(5)-- 表情的处理
在app的应用中,文字中夹带表情是个很常见,那么,在后台处理表情的时间,我遇到过下面两个问题:
1. 表情在mysql的存储。
表情的utf8编码,有时是有4个字节的,所以在一般的utf编码是没法存储的,我在网上看到的一个常用的解决方案,是把mysql升级到5.5, 然后把字符编码改为utf8mb4_general_ci。但在实践中,我发现了还有一个方法,适用于mysql 5.1, 就是把含有表情的那个字段的类型变为blob, 没错,就是用二进制存储。
2. 当文字中夹带表情的处理
很多时候,如果文字中夹带表情,那么这些文字的处理就会出现问题,例如,如果一个用户的昵称带有表情,那么我怎么把这个昵称转换为拼音呢?在实际的开发中,我遇到了这个个问题,先是找到了 https://github.com/iamcal/php-emoji 这个转换表情的类库,但发现这个类库不支持ios6后新增的表情,最后没办法了,我写了个抓取程序,把 http://punchdrunker.github.io/iOSEmoji/table_html/ios6/index.html 中ios6后新增的表情抓取出来,并写了个新的类库并开源了 https://github.com/newjueqi/converemojitostr ,这个类库的作用就是把文字中夹带的表情替换为一个特殊的字符(默认是"#") 。
[文章作者]曾健生
[作者邮箱][email protected]
[作者QQ]190678908
[新浪微博] @newjueqi
[博客]http://blog.csdn.net/newjueqi
http://blog.sina.com.cn/h6k65
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。