(PHP 4, PHP 5, PHP 7)
session_name — Получить или установить имя текущей сессии
$name
] ) : string
session_name() возвращает имя текущей
сессии. Если задан параметр name
,
session_name() обновит имя сессии и вернет
старое имя сессии.
Если новое имя сессии (name
) предоставлено,
session_name() изменяет cookie HTTP
(и выводит содержимое при включенной опции session.transid).
Когда cookie HTTP отправлены, session_name() вызывает ошибку.
session_name() необходимо вызывать до
session_start() для правильной работы сессии.
Имя сессии сбрасываются на значение по умолчанию, хранящегося в session.name во время запуска запроса. Таким образом, вам нужно вызывать session_name() для каждого запроса (и до session_start()).
name
Имя сессии ссылается на имя сессии, которое
используется в cookie и URL (например, PHPSESSID ). Оно
должно содержать только буквенно-цифровые символы, и должен быть коротким и
понятными (например, для пользователей с включенным предупреждением cookie).
Если задан параметр name
, имя текущей
сессии поменяется на него.
Имя сессии не может состоять только из цифр, по крайней мере, одна буква должна присутствовать. В противном случае каждый раз будет генерироваться новый идентификатор.
Возвращает имя текущей сессии. Если задан параметр name
, имя
текущей сессии поменяется и будет возвращено старое.
Пример #1 Пример использования session_name()
<?php
/* устанавливает имя сессии равным WebsiteID */
$previous_name = session_name("WebsiteID");
echo "Предыдущее имя сессии: $previous_name<br />";
?>
Версия | Описание |
---|---|
7.2.0 | session_name() проверяет статус сессии, ранее она проверяла только статус cookie. Поэтому старая версия session_name() позволяла вызывать session_name() после session_start(), что могло привести к сбою PHP и неправильному поведению. |