butteff
@butteff
Раз в тысячу лет заправляю свитер в носки

Как узнать id сессии (использую dbsession) пользователя в yii2 и как работать с expire значениями?

Я использую dbsession и вижу в бд значения сессий. Т.е. сконфигурированно и настроено все верно.
Я хочу узнать, онлайн ли пользователь. Для этого я хочу взять expire значение и сравнить его с текущем временем, если оно меньше 24 минут, то юзер будет считаться, как онлайн юзер (с погрешностью, конечно, но все же).

Столкнулся с трудностями, а именно:
1. Как узнать id сессии пользователя по его логину, к примеру?
2. Expire значение просто int число, например 1427741261, это что за значение и как его сравнивать с текущим временем?
  • Вопрос задан
  • 2196 просмотров
Решения вопроса 1
SamDark
@SamDark
Yii2 core team
1. Сделать свой компонент сессии, который пишет ID юзера в отдельное поле с индексом. Перекрыть метод writeSession.
2. Это UNIX timestamp. Сравнивать как число.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Replik
Используйте функцию session_id.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы