1:运行 php atrisan event:generate
2:在App/Providers/EventServiceProvider.php 里面注册
protected $listen = [
Registered::class => [
SendEmailVerificationNotification::class,
],
'App\Events\AutoCheckSeperate' => [
'App\Listeners\AutoCheckSeperateListener',//监听者
],
];
3:再次执行 php atrisan event:generate
会发现在app目录下面生成了 Event 和 Listeners文件夹
应用
1.如果钩子需要带参数进来,则需要在event事件里面配置构造函数
public $id;
public function __construct($id)
{
$this->id = $id;
}
并且在listen里面调用
public function handle(AutoCheckSeperate $event)
{
$id = $event->id;//构造函数里面所有参数都自动封装在$event 里面,直接调用即可
//钩子的业务逻辑
}
2.在controller里面使用钩子
event(new AutoCheckSeperate($ids));