emoji 在生活中已经无处不见,微信昵称大把的都在用 emoji,那么在 Laravel 中如何对它进行正确的使用呢?
首先要了解一点基础知识:
emoji 基本在各平台都有默认支持,但是都是基于 unicode 的,比如 “?”,它并不是图片,在不同的系统平台可能还不一样。
我们在网页里看到的 emoji 不一定是 unicode,因为我们可以用图片来代替,这样可以达到全平台一致的表现。
首先在 Laravel 中我们要支持 emoji 第一步,数据库字符集得为 utf8mb4,它是支持 emoji unicode 的字符集,比如我们要存储微信用户的昵称。
另外一种是对用户输入内容的 emoji 短标记支持,比如 “:smile:” 代表 ?,“+1” 代表 “?” 等,更多短名称或者叫短标记。你可以从这里找到:
https://www.webpagefx.com/tools/emoji-cheat-sheet/
那我们希望用户输入的这种标记转换成 emoji 表情展示就得需要做一些代码转换了。
这里推荐使用我写的一个 laravel 拓展包:https://github.com/overtrue/laravel-emoji。它基于 https://github.com/emojione/emojione。为我们提供了比较方便的 API 来在各种 emoji 展示方式间转换。
更多使用请参考:https://github.com/overtrue/laravel-emoji。
我还造了很多实用的轮子,有兴趣去我的个人主页看看。别忘记了 star 哦。
> 欢迎转到给你的小伙伴们~