session_name
(PHP 4, PHP 5, PHP 7)
session_name — Получить или установить имя текущей сессии
Описание
$name = null
) : string|false
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
/* устанавливает имя сессии равным WebsiteID */
$previous_name = session_name("WebsiteID");
echo "Предыдущее имя сессии: $previous_name<br />";
?>