Есть ли в Laravel 5.7 способ узнать, сколько времени осталось до истечения текущего сеанса у пользователя?
EDITED
Я также хочу проверить, когда истекает текущий сеанс как для гостей, так и для зарегистрированных пользователей.
Кроме того, в текущих ответах, по-видимому, существуют противоречивые представления о том, что сеанс истекает ровно через "SESSION_LIFETIME" минуты спустявойдите в систему, в то время как другие думают, что сессия истекает после последнего действия пользователя.Было бы хорошо уточнить, что является правильным.Затем также, как получить время последнего действия и что классифицируется как действие в сеансе.
Кроме того, я думаю, что Session :: activity () был удален в Laravel 5.7.
ВОЗМОЖНОЕ РЕШЕНИЕ
Благодаря @ bharat-geleda ниже, это рабочее решение, если вы используете Laravel 5.7 и храните сессии в БД.
$last_activity = \DB::table('sessions')->select('last_activity')->where('id', session()->getId())->first()->last_activity;
$session_time_remaining_minutes = ($last_activity + (\Config::get('session.lifetime') * 60) - time()) / 60;
dd($session_time_remaining_minutes);
I'mв настоящее время неясно, когда обновляется «last_activity», однако это не происходит при обновлении страницы.