Laravel Event

作者: AnnaJIAN | 来源:发表于2018-11-02 17:33 被阅读0次

写一个注册成功之后,自动触发验证邮件的例子

Provider 里面让注册成功这个event 和 监听他的lisener类绑定

EventServiceProvider.php
use Illuminate\Auth\Events\Registered;
use App\Listeners\RegisteredListener;
...
protected $listen = [
    Registered::class => [
        RegisteredListener::class,
    ],
];

Listener里面写入需要触发的函数

RegisteredListener.php
use Illuminate\Auth\Events\Registered;
use App\Notifications\EmailVerificationNotification;
...
public function handle(Registered $event)
{
    // Get the registed user.
    $user = $event->user;
    $user->notify(new EmailVerificationNotification());
}

需要触发的发邮件函数具体内容

class EmailVerificationNotification extends Notification implements ShouldQueue
{
...
public function toMail($notifiable)
{
    $token = Str::random(16);
    Cache::set('email_verification_' . $notifiable->email, $token, 30);
    $url = route('email_verification.verify', ['email' => $notifiable->email, 'token' => $token]);
    return (new MailMessage)
                ->greeting($notifiable->name . 'Hello:')
                ->subject('注册成功,请验证你的邮箱')
                ->line('请点击下方链接验证您的邮箱')
                ->action('验证', $url);
}

完成了。
一般发邮件这种事需要放到队列里面去处理, implements ShouldQueue将会自动把发邮件放入队列。具体如何工作,研究后再更。

Tips: notify 的用法参照:
https://laravel-china.org/docs/laravel/5.5/notifications

相关文章

  • Laravel Event

    写一个注册成功之后,自动触发验证邮件的例子 Provider 里面让注册成功这个event 和 监听他的lisen...

  • laravel Event 事件使用

    Event的使用主要分为三步: ①注册事件监听器映射关系 ②定义监听器 ③触发事件 ①注册事件监听器映射关系 在a...

  • laravel 使用 job 和 event

    job 是异步执行。适用于长时间执行任务,-> 适合耗时长的任务。例如,批量发送邮件,短信。- 关注重点是正在处理...

  • Laravel 事件

    laravel 5.1.11 中 注册一个事件 Event 注册一个监听器 写监听事件 在Provides Ev...

  • 5.4Laravel事件

    事件 更多详细请参看laravel手册 事件/监听器 事件类存放位置:app/Event 目录中 监听器存放位置:...

  • laravel自定义事件(event)

    添加event监听者 在\app\Providers目录下EventServiceProvider.php文件,添...

  • laravel--资料

    Laravel教程 Laravel - 主页 Laravel - 概述 Laravel - 安装 Laravel ...

  • 判断鼠标点击位置(div块区域),在做其他操作

    hideS(event){ event = event.target || event.srcEl...

  • 事件兼容处理

    event = event? event: window.eventvar obj = event.srcElem...

  • JS事件 Event

    获得event对象兼容性写法 :event || (event = window.event); 获得target...

网友评论

    本文标题:Laravel Event

    本文链接:https://www.haomeiwen.com/subject/cmpcxqtx.html