问题
What is the difference between:
Auth::guard($this->getGuard())->login($user);
and
auth()->login($user);
? For example, in PasswordController.php we can have:
protected function resetPassword($user, $password)
{
$user->password = $password;
$user->save();
Auth::guard($this->getGuard())->login($user);
}
or
protected function resetPassword($user, $password)
{
$user->password = $password;
$user->save();
auth()->login($user);
}
(in this case, we create a mutator in Users.php to bcrypt password AND NOT in resetPassword($user, $password) as it is by default)
In particular, what is guard($this->getGuard()), what does it do (guard(), getGuard())?
回答1:
There is no difference, the auth function is just a helper that returns an instance of \Illuminate\Contracts\Auth\Guard.
https://github.com/laravel/framework/blob/5.1/src/Illuminate/Foundation/helpers.php
来源:https://stackoverflow.com/questions/35624561/laravel-5-the-difference-between-authguardthis-getguard-loginuser