Spec-Zone.ru › Symfony 3.1

PhpBridgeSessionStorage

class PhpBridgeSessionStorage extends NativeSessionStorage

Позволяет PHP инициировать и управлять сессией Symfony.

Методы

__construct(AbstractProxy|NativeSessionHandler|SessionHandlerInterface|null $handler = null, MetadataBag $metaBag = null)

Конструктор.

AbstractProxy getSaveHandler()

Возвращает экземпляр обработчика сохранения.

из NativeSessionStorage
bool start()

Инициализирует сессию.

string getId()

Возвращает идентификатор сессии.

из NativeSessionStorage
setId(string $id)

Устанавливает идентификатор сессии.

из NativeSessionStorage
mixed getName()

Возвращает имя сессии.

из NativeSessionStorage
setName(string $name)

Устанавливает имя сессии.

из NativeSessionStorage
bool regenerate(bool $destroy = false, int $lifetime = null)

Перегенерирует идентификатор, представляющий это хранилище.

из NativeSessionStorage
save()

Принудительно сохраняет и закрывает сессию.

из NativeSessionStorage
clear()

Очищает все данные сессии в памяти.

registerBag(SessionBagInterface $bag)

Регистрирует SessionBagInterface для использования.

из NativeSessionStorage
SessionBagInterface getBag(string $name)

Получает SessionBagInterface по имени.

из NativeSessionStorage
setMetadataBag(MetadataBag $metaBag = null)

Устанавливает MetadataBag.

из NativeSessionStorage
MetadataBag getMetadataBag()

Получает MetadataBag.

из NativeSessionStorage
bool isStarted()

Проверяет, запущена ли сессия.

из NativeSessionStorage
setOptions(array $options)

Устанавливает переменные ini session.*.

из NativeSessionStorage
setSaveHandler(AbstractProxy|NativeSessionHandler|SessionHandlerInterface|null $saveHandler = null)

Регистрирует обработчик сохранения сессии как обработчик PHP сессии.

из NativeSessionStorage

Подробности

__construct(AbstractProxy|NativeSessionHandler|SessionHandlerInterface|null $handler = null, MetadataBag $metaBag = null)

Конструктор.

Параметры

AbstractProxy|NativeSessionHandler|SessionHandlerInterface|null $handler
MetadataBag $metaBag MetadataBag.

AbstractProxy getSaveHandler()

Получает экземпляр обработчика сохранения.

Возвращаемое значение

AbstractProxy

bool start()

Запускает сеанс.

Возвращаемое значение

bool True, если запущен.

Исключения

RuntimeException Если при запуске сеанса возникла ошибка.

string getId()

Возвращает идентификатор сеанса.

Возвращаемое значение

string Идентификатор сеанса или пустая строка.

setId(string $id)

Устанавливает идентификатор сеанса.

Параметры

string $id

mixed getName()

Возвращает имя сеанса.

Возвращаемое значение

mixed Имя сеанса.

setName(string $name)

Устанавливает имя сеанса.

Параметры

string $name

bool regenerate(bool $destroy = false, int $lifetime = null)

Перегенерирует идентификатор, представляющий это хранилище.

Этот метод должен вызывать sessionregenerateid($destroy), если этот интерфейс используется для объекта хранилища, предназначенного для тестирования на единицу или функционального тестирования, где реальный сеанс PHP будет мешать тестированию.

Примечание: regenerate+destroy не должно очищать данные сеанса в памяти, только удалять данные сеанса из постоянного хранилища.

Внимание: При перегенерации идентификатора сеанса блокировка не используется в проекте PHPs сеансов. См. https://bugs.php.net/bug.php?id=61470 для обсуждения. Поэтому необходимо убедиться, что сгенерированный сеанс сохранен ДО отправки заголовков с новым идентификатором. Symfony HttpKernel предлагает для этого слушателя. См. Symfony\Component\HttpKernel\EventListener\SaveSessionListener. В противном случае данные сеанса могут быть снова потеряны для параллельных запросов с новым идентификатором. Одним из результатов может стать выход из системы сразу после входа.

Параметры

bool $destroy Уничтожить сеанс при перегенерации?
int $lifetime Устанавливает срок действия cookie сеанса. Значение null оставит настройки системы без изменений, 0 установит срок действия cookie до закрытия сеанса браузера. Время в секундах и не является отметкой Unix.

Возвращаемое значение

bool True, если сеанс перегенерирован, false при ошибке

Исключения

RuntimeException Если при перегенерации этого хранилища возникла ошибка

save()

Принудительно сохраняет и закрывает сеанс.

Этот метод должен вызывать sessionwriteclose(), если этот интерфейс используется для объекта хранилища, предназначенного для тестирования на единицу или функционального тестирования, где реальный сеанс PHP будет мешать тестированию, в этом случае он должен фактически сохранять данные сеанса при необходимости.

Исключения

RuntimeException Если сеанс сохранен без запуска, или если сеанс уже закрыт.

clear()

Очистить все данные сеанса в памяти.

registerBag(SessionBagInterface $bag)

Регистрирует SessionBagInterface для использования.

Параметры

SessionBagInterface $bag

SessionBagInterface getBag(string $name)

Получает SessionBagInterface по имени.

Параметры

string $name

Возвращаемое значение

SessionBagInterface

Исключения

InvalidArgumentException Если пакет не существует

setMetadataBag(MetadataBag $metaBag = null)

Устанавливает MetadataBag.

Параметры

MetadataBag $metaBag

MetadataBag getMetadataBag()

Получает MetadataBag.

Возвращаемое значение

MetadataBag

bool isStarted()

Проверяет, запущен ли сеанс.

Возвращаемое значение

bool True, если запущен, иначе false.

setOptions(array $options)

Устанавливает переменные ini session.*.

Для удобства мы опускаем 'session.' с начала ключей. Явно игнорирует другие ключи ini.

Параметры

array $options Массив директив ini session (ключ => значение).

См. также

http://php.net/session.configuration

setSaveHandler(AbstractProxy|NativeSessionHandler|SessionHandlerInterface|null $saveHandler = null)

Регистрирует обработчик сохранения сеанса как обработчик сеанса PHP.

Чтобы использовать внутренние обработчики сохранения сеанса PHP, переопределите этот метод с помощью iniset с session.savehandler и session.save_path, например:

ini_set('session.save_handler', 'files');
ini_set('session.save_path', /tmp');

или передайте экземпляр NativeSessionHandler, который настраивает session.save_handler в конструкторе, для шаблона см. NativeFileSessionHandler или используйте обработчики из пакета composer drak/native-session

Параметры

AbstractProxy|NativeSessionHandler|SessionHandlerInterface|null $saveHandler

Исключения

InvalidArgumentException

См. также

http://php.net/session-set-save-handler
http://php.net/sessionhandlerinterface
http://php.net/sessionhandler
http://github.com/drak/NativeSession

© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/3.1/Symfony/Component/HttpFoundation/Session/Storage/PhpBridgeSessionStorage.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API