вот пример с gc_maxlifetime
но это не сработало ни для одного из session.
переменные, которые я пробовал
<?php
session_start();
ini_set('session.gc_maxlifetime', 1500);
Это работало до PHP 7.2.0 и теперь выдает это предупреждение:
Предупреждение: ini_set (): сеанс активен. Вы не можете изменить сеанс
Настройки ini модуля в это время в / in / nOv0L в строке 3
Я проверил изменений но я не могу найти причину для этого.
Может кто-нибудь сказать мне, что изменилось, и как я могу обойти это?
постскриптум Я знаю, что я мог бы сделать это так:
ini_set('session.gc_maxlifetime', 1500);
session_start();
но это не совсем вопрос моего вопроса.
Даже если нет предупреждения, изменение настройки после начала сеанса не будет иметь никакого эффекта.
руководство говорит
Сборка мусора может происходить во время начала сеанса
поэтому, если вы измените значение после начала сеанса, оно не будет иметь никакого эффекта. Это также верно для большинства других параметров сеанса.
То, что вы, вероятно, испытываете, является артефактом других изменений, таких как добавление этого сообщения в качестве предупреждения (все другие источники, которые я нашел, например, например, Сообщение: ini_set (): сеанс активен. Вы не можете изменить настройки ini модуля сеанса в это время. упомяните это просто как «сообщение» без связанного уровня).
Хорошо, внесите все изменения в конфигурацию перед началом сеанса:
ini_set('session.gc_maxlifetime', 1500);
session_start();