Simindey
7/7/2017 - 1:02 PM

Сессии в PHP

Сессии в PHP

 Допустим, мы хотим задать время жизни сесии - 3 часа. Для этого в файле php.ini устанавливаем следующие параметры:

session.gc_maxlifetime = 10800
session.cookie_lifetime = 10800

Если у вас нет возможности внести изменения в файл php.ini, то можно сделать установку этих параметров при помощи файла .htaccess. Для этого вносим в него следующие строки:

php_value session.gc_maxlifetime 10800
php_value session.cookie_lifetime 10800

Если ваш хостер запрещает вам использовать директиву php_value в файле .htaccess или использовать .htaccess в целом - то пора менять хостера.
 
Кроме того, вы можете установить время жизни сессионной куки из PHP при помощи функции session_set_cookie_params. К примеру:

<?php
session_set_cookie_params(10800);
?> 

При этом нужно учитывать, что функциция set_cookie_params должна быть вызвана до того, как сессия будет открыта при помощи session_start. Функция set_cookie_params также позволяет установить путь, домен, настройки безопасности для сессионной куки.