84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
如何处理emoji表情更好一点
现在前端框里面的表情用类似哭这样的符号代替
处理方式:
1.入库的时候,把表情替换成<img src="1.gif"> 读取时候方便,但是不利于后期维护2.直接入库,读取的时候在后台处理。可能会浪费时间。3.也是直接入库,读取完成后,丢到前端让js来替换。这个会使前端加载一个大的js数组
哪个更好呢?
学习是最好的投资!
utf8mb4编码是支持emoji表情的。
1.mysql 5.6可以支持emoj表情了http://www.linuxde.net/2015/1...2.MySQL其他版本的,可以使用urlencode转换或者以base64加密,缺点是增加了数据的长度,而且每次写入读取都要转换
毋庸置疑最后一种最优,原因只有一个兼容性;不同环境各自处理,比如:web、移动端。
几种办法1.使用第三方API,比如新浪微博的表情API,这样不用你去费心2,在后台输出的时候替换,像这种方法主要是照顾垃圾配置的电脑,你永远不要高看用户的电脑配置3,前台替换,js正则替换成你第一种方法就行了,比如 [哈哈] 替换成<img src='哈哈.gif'/>
我是这么做的,用户输入的emoji会被js替换为[emiji-<UTF8CODE>]的形式,存到数据库里,显示的时候替换为<i class="emoji emoji-<UTF8CODE>"></i>的形式,然后只需要维护一个超大的css文件就可以了,可以把emoji图片转换成雪碧图,这样后期的维护就更容易了。
[emiji-<UTF8CODE>]
<i class="emoji emoji-<UTF8CODE>"></i>
你可以参考emojione的实现
utf8mb4是可以直接保存转码的, 注意框架获取表单数据的方法一般都有过滤函数 一定要去掉 不然会取不到值的
utf8mb4编码是支持emoji表情的。
1.mysql 5.6可以支持emoj表情了http://www.linuxde.net/2015/1...
2.MySQL其他版本的,可以使用urlencode转换或者以base64加密,缺点是增加了数据的长度,而且每次写入读取都要转换
毋庸置疑最后一种最优,原因只有一个兼容性;不同环境各自处理,比如:web、移动端。
几种办法
1.使用第三方API,比如新浪微博的表情API,这样不用你去费心
2,在后台输出的时候替换,像这种方法主要是照顾垃圾配置的电脑,你永远不要高看用户的电脑配置
3,前台替换,js正则替换成你第一种方法就行了,比如 [哈哈] 替换成<img src='哈哈.gif'/>
我是这么做的,用户输入的emoji会被js替换为
[emiji-<UTF8CODE>]
的形式,存到数据库里,显示的时候替换为<i class="emoji emoji-<UTF8CODE>"></i>
的形式,然后只需要维护一个超大的css文件就可以了,可以把emoji图片转换成雪碧图,这样后期的维护就更容易了。你可以参考emojione的实现
utf8mb4是可以直接保存转码的, 注意框架获取表单数据的方法一般都有过滤函数 一定要去掉 不然会取不到值的