Я сталкивался с этим кодом в кодовой базе Laravel, где функция присваивается свойству ($this->userResolver
) в конструкторе. Какова цель этого?
UserResolver не использует аргументы, переданные конструктору. Рассматриваемый класс является классом AuthManager (Illuminate / Auth / AuthManager.php).
Если я удаляю код $ this-> userResolver здесь, в конструкторе, кажется, что все по-прежнему работает нормально. Буду рад, если кто-нибудь сможет это объяснить, спасибо!
public function __construct($app)
{
$this->app = $app;
$this->userResolver = function ($guard = null) {
return $this->guard($guard)->user();
};
}