Функции Язык программирования PHP

session_name

(PHP 4)

session_name - получает и/или устанавливает имя текущей сессии.

Описание

string session_name ([string name])

session_name() возвращает имя текущей сессии. Если name специфицирован, имя текущей сессии изменяется на это значение.

Имя сессии ссылается на session id в куках и URL. Оно должно содержать только алфавитно-числовые символы; оно должно быть коротким и описательным (например, для пользователей с включёнными предупреждениями о куках). Имя сессии восстанавливается в значение по умолчанию, хранимое в session.name во время начала запроса. Таким образом, вам необходимо вызывать session_name() для каждого запроса (и до session_start() или session_register()).

Пример 1. session_name()
<?php 
// установить имя сессии WebsiteID $previous_name = session_name("WebsiteID"); 
echo "The previous session name was $previous_name<p>"; ?>

Назад Оглавление Вперёд
session_module_name Вверх session_readonly

Повторение

По умолчанию квантификаторы являются "жадными", то есть они совпадают максимально возможное количество раз (до максимально допустимого количества раз), не вызывая неудачи выполнения остальной части патэрна. Классический пример, когда это создаёт проблемы - попытка найти совпадения в комментарии C-программ. Комментарии появляются между символами /* и */, а внутри могут появляться отдельные символы * и /. Попытка найти совпадение с C-комментариями, применив патэрн

/\*.*\*/

к строке

/* первый комментарий */ не комментарий /* второй комментарий */

терпит неудачу, поскольку происходит совпадение с целой строкой из-за жадности элемента .*.

Однако, если после квантификатора идёт знак вопроса, он перестает быть жадным и совпадает минимально возможное количество раз, поэтому патэрн

/\*.*?\*/

верно выполняется с C-комментариями. Значение различных других квантификаторов не изменится, только предпочтительное количество совпадений. Не путайте это использование знака вопроса с его использованием в качестве собственно квантификатора. Поскольку он может использоваться двояко, они иногда может появляться удвоенным:

\d??\d

что совпадает с одной цифрой, по преимуществу, но может совпадать и с двумя, если это единственный способ совпадения оставшейся части патэрна.

Если установлена опция PCRE_UNGREEDY (отсутствующая в Perl), то квантификаторы не жадничают по умолчанию, но отдельные могут быть жадными, если после них стоит знак вопроса. Другими словами, знак вопроса инвертирует поведение по умолчанию.