(PHP 4, PHP 5, PHP 7, PHP 8)
session_name — Получить или установить имя текущей сессии
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
и он не равен null
, имя текущей сессии поменяется на него.
Имя сессии не может состоять только из цифр, по крайней мере, одна буква должна присутствовать. В противном случае каждый раз будет генерироваться новый идентификатор.
Возвращает имя текущей сессии. Если задан параметр name
, имя текущей сессии поменяется и будет возвращено старое или false
, если возникла ошибка.
Версия | Описание |
---|---|
8.0.0 | module теперь может быть null . |
7.2.0 | session_name() проверяет статус сессии, ранее она проверяла только статус cookie. Поэтому старая версия session_name() позволяла вызывать session_name() после session_start(), что могло привести к сбою PHP и неправильному поведению. |
Пример #1 Пример использования session_name()
<?php
$previous_name = session_name("WebsiteID");
echo "Предыдущее имя сессии: $previous_name<br />";
?>