gpt4 book ai didi

php - Laravel 5.1 中发送邮件的事件

转载 作者:搜寻专家 更新时间:2023-10-31 21:06:36 24 4
gpt4 key购买 nike

我正在尝试在 Laravel 5.1 中实现事件。触发事件将发送一封邮件。

我做了以下步骤:

首先,在 EventServiceProvider 中,我在 $listen 中添加了这个

'send.mail' => [
\App\Listeners\CreateTicketMail::class,
],

其次,创建了一个新的事件类 - SendActionEmails

然后在 Listener 类中处理此事件 - CreateTicketMail

public function handle(SendActionEmails $event)
{
dd($event);
}

现在,当我触发此事件 send.mail 时,出现错误

Event::fire('check.fire');

Argument 1 passed to App\Listeners\CreateTicketMail::handle() must be an instance of App\Events\SendActionEmails, none given

此外,我可以在哪里将数据发送到邮件将使用的事件。数据喜欢,来自,主题。

我发现在触发事件时,将作为参数传递给火灾的一种方式。

Event::fire('check.fire', array($data));

但是,我如何在监听器中处理这些数据????

最佳答案

您需要将事件对象传递给 fire 方法并监听一个与事件类同名的事件:

在 EventServiceProvider 中:

SendActionEmails::class => [
\App\Listeners\CreateTicketMail::class,
],

事件类:

class SendActionEmails {
public $data;
}

触发事件并传递一些数据:

$event = new SendActionEmails;
$event->data = 'some data';
Event::fire($event);

关于php - Laravel 5.1 中发送邮件的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31290012/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com