W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
事件訂閱者是可以在自身內(nèi)部訂閱多個(gè)事件的類,即能夠在單個(gè)類中定義多個(gè)事件處理器。訂閱者應(yīng)該定義一個(gè) subscribe
方法,這個(gè)方法接收一個(gè)事件分發(fā)器實(shí)例。你可以調(diào)用給定事件分發(fā)器上的 listen
方法來(lái)注冊(cè)事件監(jiān)聽器:
<?php
namespace App\Listeners;
class UserEventSubscriber
{
/**
* 處理用戶登錄事件
*/
public function handleUserLogin($event) {}
/**
* 處理用戶注銷事件
*/
public function handleUserLogout($event) {}
/**
* 為事件訂閱者注冊(cè)監(jiān)聽器
*
* @param \Illuminate\Events\Dispatcher $events
* @return void
*/
public function subscribe($events)
{
$events->listen(
'Illuminate\Auth\Events\Login',
[UserEventSubscriber::class, 'handleUserLogin']
);
$events->listen(
'Illuminate\Auth\Events\Logout',
[UserEventSubscriber::class, 'handleUserLogout']
);
}
}
或者,你的訂閱者的 subscribe
方法可以將事件數(shù)組返回到處理程序映射。在這種情況下,事件監(jiān)聽器映射將自動(dòng)為你注冊(cè):
use Illuminate\Auth\Events\Login;
use Illuminate\Auth\Events\Logout;
/**
* Register the listeners for the subscriber.
*
* @return array
*/
public function subscribe()
{
return [
Login::class => [UserEventSubscriber::class, 'handleUserLogin'],
Logout::class => [UserEventSubscriber::class, 'handleUserLogout'],
];
}
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: