gpt4 book ai didi

events - Laravel 事件处理程序和监听器

转载 作者:行者123 更新时间:2023-12-02 08:53:48 26 4
gpt4 key购买 nike

我有一个关于 Laravel 事件处理程序和监听器的问题。我不知道从哪里开始。

我想知道事件到底是什么以及何时使用它们。我还想知道组织事件和监听器的最佳方式是什么,以及将它们放置在哪里(在哪个文件夹中)。

如有任何帮助,我们将不胜感激;)

最佳答案

我最近实现了一个操作提要,例如创建帖子时,会注册一个新用户,或者其他什么。每个操作都会触发一个事件,并且每个事件都有一个监听器,它会保存诸如“用户 XY 刚刚注册!”之类的内容。在数据库中。

非常基本的版本:

// app/controllers/RegistrationController.php
class RegistrationController {
public function register($name) {
User::create([
'name' => $name
});

Event::fire('user.registered', [$name]);
}
}

// app/events.php
Event::listen('user.registered', function($name) {
DB::table('feed')->insert(
[
'action' => 'User ' . $name . ' just registered!'
// ...
}
);
});

要使用 events.php 文件,请将以下行添加到您的 app/start/global.php

require app_path().'/events.php';

现在您可以将所有事件放入 events.php 中。

<小时/>

但是如果您要处理大量事件,则不应将所有事件放在一个文件中。请参阅Event Subscribers .

关于events - Laravel 事件处理程序和监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24499702/

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