open
-
Callback-функция со следующей сигнатурой:
Callback-функция open
работает как конструктор в классах и выполняется
при открытии сессии. Это первая callback-функция, которая выполняется,
когда сессия стартует автоматически либо вручную через session_start().
Возвращаемое значение true
в случае успешного выполнения, false
в случае неудачи.
close
-
Callback-функция со следующей сигнатурой:
Callback-функция close
работает как деструктор в классах и выполняется
после того, как была вызвана callback-функция write
. Она также вызывается
при вызове session_write_close().
Возвращаемое значение должно быть true
в случае успешного выполнения, false
в случае неудачи.
read
-
Callback-функция со следующей сигнатурой:
Callback-функция read
должна всегда возвращать кодированную (сериализованную)
строку сессии или пустую строку, если нет данных для чтения.
Эта callback-функция вызывается внутренним механизмом PHP при старте сессии или при вызове
session_start(). Перед тем, как будет вызвана эта callback-функция,
PHP вызовет callback-функцию open
.
Возвращаемое значение данной callback-функции должно быть в точно таком же сериализованном формате,
который изначально передавался для хранения в callback-функцию write
. Возвращаемое
значение будет автоматически десериализовано PHP и использовано для заполнения суперглобальной переменной
$_SESSION. Даже если данные похожи на результат serialize(), стоит
помнить, что это другой формат сериализации, который определён ini-директивой session.serialize_handler.
write
-
Callback-функция со следующей сигнатурой:
Callback-функция write
вызывается, когда сессия должна быть сохранена и закрыта. Данная
callback-функция принимает идентификатор текущей сессии и сериализованную версию суперглобальной переменной
$_SESSION. Используемый внутри PHP метод сериализации определён ini-директивой
session.serialize_handler.
Переданные в эту callback-функцию сериализованные данные сессии должны быть сохранены в связи с переданным
идентификатором сессии. При получении этих данных, callback-функция read
должна вернуть
то же самое значение, что было передано в callback-функцию write
.
Данная callback-функция вызывается, когда PHP завершает работу или явно при вызове session_write_close().
Следует помнить, что после выполнения этой callback-функции, PHP выполнит callback-функцию close
.
Замечание:
Обработчик "write" не выполнится до тех пор, пока выходной поток не будет
закрыт. Таким образом, вывод отладочных операторов в обработчике "write"
никогда не отобразится в браузере. Если необходим вывод отладочной информации,
рекомендуется записывать отладочные данные в файл.
destroy
-
Callback-функция со следующей сигнатурой:
Данная callback-функция вызывается, когда сессия уничтожается с помощью session_destroy()
или при вызове session_regenerate_id() с параметром destroy, установленным в true
.
Возвращаемое значение должно быть true
в случае успешного выполнения, false
в случае неудачи.
gc
-
Callback-функция со следующей сигнатурой:
Callback-функция сборщика мусора периодически вызывается PHP для очистки данных старых сессий.
Частота контролируется директивами session.gc_probability
и session.gc_divisor. Значение lifetime, которое передаётся
в данную callback-функцию может быть установлено в session.gc_maxlifetime.
Возвращаемое значение должно быть true
в случае успешного выполнения, false
в случае неудачи.
create_sid
-
Callback-функция со следующей сигнатурой:
Данная callback-функция выполняется, когда требуется новый идентификатор сессии. Не
предусматривает параметров, а возвращаемое значение должно быть строкой, которая
является допустимым идентификатором сессии для вашего обработчика.
validate_sid
-
Callback-функция со следующей сигнатурой:
Callback-функция выполняется, когда должна быть запущена сессия, предоставляется идентификатор сессии
и включается session.use_strict_mode.
key
- это идентификатор сессии для проверки.
Идентификатор сессии действителен, если сессия с таким идентификатором уже существует.
Возвращаемое значение должно быть true
в случае успешного выполнения или false
в случае возникновения ошибки.
update_timestamp
-
Callback-функция со следующей сигнатурой:
Callback-функция выполняется при сессии.
key
- это идентификатор сессии, val
- это данные сессии.
Возвращаемое значение должно быть true
в случае успешного выполнения или false
в случае возникновения ошибки.