Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 在不同的防护装置上使用Auth::check()不起作用_Laravel_Authentication_Middleware_Guard - Fatal编程技术网

Laravel 在不同的防护装置上使用Auth::check()不起作用

Laravel 在不同的防护装置上使用Auth::check()不起作用,laravel,authentication,middleware,guard,Laravel,Authentication,Middleware,Guard,我有不同的警卫 'guards' => [ 'web' => [ 'driver' => 'session', 'provider' => 'users', ], 'api' => [ 'driver' => 'token', 'provider' => 'users', ], 'teacher' => [ 'driver'

我有不同的警卫

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],

    'api' => [
        'driver' => 'token',
        'provider' => 'users',
    ],

    'teacher' => [
        'driver' => 'session',
        'provider' => 'teachers',
    ],

    'doctor' => [
        'driver' => 'session',
        'provider' => 'doctors',
    ],
],
我对所有3个用户(医生、教师和用户)都有相同的布局。我想查看他们是否已登录,如果没有,我想显示一个按钮登录

我试过这个:

@if(!auth()->guard('web')->check() || !auth()->guard('doctor')->check() || !auth()->guard('teacher')->check() )
                        <li><a class="nav-link" href="{{ route('getting-started') }}">{{ __('Login') }}</a></li>
@if(!auth()->guard('web')->check()| | |!auth()->guard('doctor')->check()| | |!auth()->guard('teacher')->check())
  • 请注意,当我只使用:auth()::check()时,它指的是其防护为web的默认用户

    如果我只检查一个防护装置,它会工作,但其他防护装置呢?也许我的if语句不正确,但无论如何,我想要一个解决方案来检查给定的用户是否已登录,这样我就可以隐藏按钮并将其重定向到他的个人资料

    谢谢

    @if(!(auth()->guard('web')->check()| auth()->guard('doctor')->check()| auth()->guard('teacher')->check())
    
  • @if(!(auth()->guard('web')->check() || auth()->guard('doctor')->check() || auth()->guard('teacher')->check() ))
       <li><a class="nav-link" href="{{ route('getting-started') }}">{{ __('Login') }}</a></li>