Проблем
Искате да видите дали даден потребител е влязъл в системата.
Знаете, че Laravel автоматично задържа удостоверения потребител в сесията. Искате да проверите дали текущата заявка има потребител, влязъл и удостоверен.
Решение
Използвайте Удостоверяване :: check ()
.
The Удостоверяване :: check ()
метод връща true или false.
ехо "Яй! Влезли сте.";
Дискусия
Няколко неща се случват зад кулисите, когато правите това.
Първо Laravel проверява дали текущата сесия има идентификатор на потребител. Ако е така, тогава се прави опит за извличане на потребителя от базата данни.
Ако това не успее, тогава Laravel проверява за бисквитка „помни ме“. Ако това е налице, отново се прави опит за извличане на потребителя от базата данни.
Истината се връща само ако валиден потребител е извлечен от базата данни.
Филтърът за гости използва този метод
Laravel осигурява изпълнение по подразбиране на филтъра за гости в приложение / филтри.php
.
if (Auth :: check ()) return Redirect :: to ('/');
);
Това изпълнение по подразбиране се използва, когато искате да добавите филтър към маршрут, който е достъпен само за гости (известни също като потребители, които не са влезли в системата). Ако потребителят е влязъл в системата, той ще бъде пренасочен към началната страница.