Php 注销事件(Laravel 7)
我对Laravel很陌生,想知道如何设置一个函数来运行事件。具体来说,当用户注销时,如何调用函数 注册一个新的注销事件,或者Laravel 7是否已经有一个文件可以编辑以在注销时运行命令,这样做的最佳方式是什么Php 注销事件(Laravel 7),php,laravel,laravel-events,laravel-7.x,Php,Laravel,Laravel Events,Laravel 7.x,我对Laravel很陌生,想知道如何设置一个函数来运行事件。具体来说,当用户注销时,如何调用函数 注册一个新的注销事件,或者Laravel 7是否已经有一个文件可以编辑以在注销时运行命令,这样做的最佳方式是什么 谢谢您的帮助。您可以收听。确实已经定义了一个注销事件,当用户注销时会触发该事件。它位于照明\Auth\Events\Logout 您需要创建一个新事件,然后告诉Laravel让该侦听器订阅注销事件,方法是添加到EventServiceProvider.php的映射,如下所示: class
谢谢您的帮助。您可以收听。确实已经定义了一个注销事件,当用户注销时会触发该事件。它位于
照明\Auth\Events\Logout
您需要创建一个新事件,然后告诉Laravel让该侦听器订阅注销事件,方法是添加到EventServiceProvider.php的映射,如下所示:
class EventServiceProvider extends ServiceProvider
{
protected $listen = [
...
Logout::class => [
'App\Listeners\HandleLogout',
],
...
];
...
然后,您可以在app/Listeners中创建一个侦听器类,如下所示:
LogoutHandler.php
class LogoutHandler
{
/**
* Handle the event.
*
* @param Logout $event
* @return void
*/
public function handle(Logout $event)
{
$event->user; // The user that logged out
#event->guard; // The auth guard used
}
}
但是,应该注意,会话过期或关闭浏览器窗口之类的操作不会生成这些事件之一。如果你想做一些类似“谁在线”的事情,你需要一种不同的方法,比如WebSocket。