Приветствую!
Подскажите, пожалуйста, как можно задать свое время жизни для конкретной сессии?
$_SESSION['log'];//Авторизация
$_SESSION['cart'];//корзина
У меня создается сессия на авторизацию пользователя и на добавление товара в корзину. Для авторизационной сессии надо задать свое время жизни, а для корзиной сессии этого делать не нудно.
Возможно ли такое реализовать и как, если можно?:)
По сути никак не задать. Для начало необходимо понимать, что такое сессия и для чего она предназначена.
Каждому посетителю сайта присваивается уникальный идентификатор, называемый идентификатором сессии (session id). Он хранится либо в cookie на стороне пользователя, либо передается через URL.
То есть сессия должна создаваться одна для сеанса.
Само время жизни общей сессии можно установить в php.ini session.gc_maxlifetime
В Вашем же случае, правильным вариантом, скорее будет устанавливать данные в cookie.
И работать с данными из cookie через $_COOKIE
Конкретно для $_SESSION вы не сможете указать время жизни. Лучше сделать так, при заполнении $_SESSION['log'] заполнять $_SESSION['log_start'] текущем временем. А потом проверять, не прошло ли слишком много времени.
$_SESSION['log_start'] = time();
...
if (time() - $_SESSION['log_start'] > $log_expr_time) {
сессия протухла
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости