如何在事件侦听器中获取经过身份验证的用户-Laravel

Ank*_*kit 2 php laravel laravel-5.6

我正在尝试确定在事件侦听器中获取经过身份验证的用户信息的正确方法。

我总是可以使用\Auth:user()似乎有效的方法,但是如果我将侦听器排队,我认为它不会起作用。

我是否需要将经过身份验证的用户作为每个事件的属性添加到事件类中,还是有其他方法可以执行?

Dev*_*evK 5

使用户通过事件Auth触发事件时,您应该有权访问外观。

事件:

class SomeEvent
{
    // Public so that it will be accessible from the listener
    public $user;

    public function __construct(User $user)
    {
        $this->user = $user;
    }
}
Run Code Online (Sandbox Code Playgroud)

听众:

class SomeListener
{
    public function handle(SomeEvent $event)
    {
        // Get the public property `$user` from the event
        $authUser = $event->user;
    }
}
Run Code Online (Sandbox Code Playgroud)

触发:

event(new SomeEvent(auth()->user()));
Run Code Online (Sandbox Code Playgroud)