Laravel Emoji —— 在 Laravel 应用中集成使用 Emoji 表情

Emoji表情

1、简介

在社交网络如此发达的今天,Emoji 表情包无处不在,无论是QQ、微信、微博还是各大论坛,到处都是表情包的身影。作为一个开发者,你可能需要在应用中提供多种表情以供用户评论、交流时使用。

PHP 5 已经支持将 Unicode 字符串转化为表情,但是比较复杂:

<?php
echo json_decode('"\uD83D\uDE00"');

PHP 7 对 Unicode 字符串提供了更好的支持,我们可以更方便地显示表情:

<?php
echo "\u{1F60E}";

当然,这样的编码是不友好的,我们需要使用可读性更好的方式来实现表情显示,幸运的是,在 Laravel 中,我们可以通过 Laravel Emoji 这个扩展包来实现这个目的。

2、安装

系统要求:PHP 7.0+/HHVM 3.3+,Composer

要安装最新版本的 Laravel Emoji,在 composer.json 中声明如下依赖:

"unicodeveloper/laravel-emoji": "1.0.*"

然后运行 composer installcomposer update 来下载并安装该扩展包。

安装完成之后,需要注册服务提供者,在配置文件 app.php 中,添加如下这段代码到 providers 数组:

Unicodeveloper\Emoji\EmojiServiceProvider::class

同时,不要忘了注册门面到 aliases 数组:

'aliases' => [    
    ...    
    'Emoji' => Unicodeveloper\Emoji\Facades\Emoji::class,
    ...
]

3、使用

Laravel Emoji 为我们提供了多种显示表情的方法,然后通过 Emoji 门面统一调用:

<?php
Emoji::findByAlias("kissing_heart");
Emoji::findByName("sunglasses");
Emoji::findByUnicode("\u{1F60A}"); //displays 'blush'

更多 Emoji 表情,请查看完整Emoji表情列表

学院君

学院君 has written 548 articles

资深PHP工程师,Laravel学院院长