Класс SessionComponent
Компонент SessionCakePHP предоставляет способ сохранения данных клиента между запросами к странице. Он выступает в качестве оболочки для $_SESSION, а также предоставляет удобные методы для нескольких функций, связанных с $_SESSION.
- Объект
-
Компонент -
SessionComponent
Ссылка: http://book.cakephp.org/2.0/ru/core-libraries/components/sessions.html
Ссылка: http://book.cakephp.org/2.0/ru/development/sessions.html
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Расположение: Cake/Controller/Component/SessionComponent.php
Унаследованные свойства
Краткое описание методов
- check() publicПроверяет, установлена ли переменная сессии.
- consume() publicСчитывает и удаляет значение сессии для ключа.
- delete() publicУдаляет значение сессии для ключа.
- destroy() publicИспользуется для уничтожения сессий
- error() publicИспользуется для определения последней ошибки в сессии.
- id() publicПолучить/установить идентификатор сессии.
- read() publicСчитывает значение сессии для ключа или возвращает значения для всех ключей.
- renew() publicИспользуется для обновления идентификатора сессии
- setFlash() publicИспользуется для установки переменной сессии, которая может быть использована для вывода сообщений в представлении.
- started() publicВозвращает булевое значение, указывает была ли начата сессия.
- userAgent() publicПолучить / Установить userAgent
- valid() publicИспользуется для проверки валидности сессии.
- write() publicЗаписывает значение в ключ сессии.
Подробное описание методов
check()source public
check( string $name )
Проверяет, установлена ли переменная сессии.
В вашем контроллере: $this->Session->check('Controller.sessKey');
Параметры
- строка
$name - имя ключа сессии, который нужно проверить
Возвращает
booleantrue, если переменная сессии установлена, false - если нет
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/sessions.html#SessionComponent::checkconsume()source public
consume( string $name )
Считывает и удаляет значение сессии для ключа.
В вашем контроллере: $this->Session->consume('Controller.sessKey');
Параметры
- строка
$name - имя ключа сессии, который нужно считать
Возвращает
смешанный типзначения из переменных сессии
delete()source public
delete( string $name )
Удаляет значение сессии для ключа.
В вашем контроллере: $this->Session->delete('Controller.sessKey');
Параметры
- строка
$name - имя ключа сессии, который нужно удалить
Возвращает
booleantrue, если переменная сессии установлена и может быть удалена, false - если переменная не была установлена.
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/sessions.html#SessionComponent::deletedestroy()source public
destroy( )
Используется для уничтожения сессий
В вашем контроллере: $this->Session->destroy();
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/sessions.html#SessionComponent::destroyerror()source public
error( )
Используется для определения последней ошибки в сессии.
В вашем контроллере: $this->Session->error();
Возвращает
строкаПоследняя ошибка сессии
id()source public
id( string $id null )
Получить/установить идентификатор сессии.
При получении идентификатора сессии сессия будет запущена, если она еще не была запущена. При установке идентификатора сессии сессия не будет запущена.
Параметры
- строка
$idнеобязательный null - Идентификатор для использования (необязательно)
Возвращает
строкаТекущий идентификатор сессии.
read()source public
read( string $name null )
Считывает значение сессии для ключа или возвращает значения для всех ключей.
В вашем контроллере: $this->Session->read('Controller.sessKey'); Вызов метода без параметра вернет все переменные сессии
Параметры
- строка
$nameнеобязательный null - имя ключа сессии, который нужно считать
Возвращает
смешанный типзначение из переменных сессии
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/sessions.html#SessionComponent::readrenew()source public
renew( )
Используется для обновления идентификатора сессии
В вашем контроллере: $this->Session->renew();
setFlash()source public
setFlash( string $message , string $element 'default' , array $params array() , string $key 'flash' )
Используется для установки переменной сессии, которая может быть использована для вывода сообщений в представлении.
В вашем контроллере: $this->Session->setFlash('Это было сохранено');
Дополнительные параметры ниже могут быть переданы для настройки вывода, или сообщения.[ключ]. Вы также можете установить дополнительные параметры при рендеринге сообщений всплывающих окон. Дополнительную информацию о том, как это сделать, см. в SessionHelper::flash().
Устарело
3.0.0 С версии 2.7, используйте вместо него FlashComponent.Параметры
- строка
$message - Сообщение, которое нужно отобразить
- строка
$elementнеобязательный 'default' - Элемент для обертывания сообщения всплывающего окна.
- массив
$paramsнеобязательный array() - Параметры, которые будут отправлены в макет в качестве переменных представления
- строка
$keyнеобязательный 'flash' - Ключ сообщения, по умолчанию 'flash'
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/sessions.html#creating-notification-messagesstarted()source public
started( )
Возвращает булевое значение, указывает была ли начата сессия.
Возвращает
booleanuserAgent()source public
userAgent( string $userAgent null )
Получение/установка userAgent
Параметры
- строка
$userAgentнеобязательно null - Установить userAgent
Возвращает
строкаТекущий user agent.
valid()source public
valid( )
Используется для проверки валидности сессии.
В вашем контроллере: $this->Session->valid();
Возвращает
булевоtrue — сессия валидна, false — сессия невалидна
write()source public
write( string $name , string $value null )
Запись значения в ключ сессии.
В вашем контроллере: $this->Session->write('Controller.sessKey', 'session value');
Параметры
- строка
$name Имя ключа, который вы устанавливаете в сессии. Для лучшей организации ключ должен быть в формате Controller.key
- строка
$valueнеобязательно null - Значение, которое вы хотите сохранить в сессии.
Возвращает
булевоУспешно
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/sessions.html#SessionComponent::writeМетоды, унаследованные от Component
__construct()source public
__construct( ComponentCollection $collection , array $settings array() )
Конструктор
Параметры
-
ComponentCollection$collection - КомпонентCollection, который может использоваться этим компонентом для ленивой загрузки его компонентов
- массив
$settingsнеобязательно array() - Массив настроек конфигурации.
Переопределяет
Object::__construct() __get()source public
__get( string $name )
Магический метод для ленивой загрузки $components.
Параметры
- строка
$name - Имя компонента для получения.
Возвращает
смешанноеОбъект Component или null.
beforeRedirect()source public
beforeRedirect( Controller $controller , string|array $url , integer $status null , boolean $exit true )
Вызывается перед Controller::redirect(). Позволяет заменить URL, на который будет осуществлен переадресация, на новый URL. Возвращаемое значение этого метода может быть массивом или строкой.
Если возвращается массив, содержащий ключ 'url'. Вы также можете указать следующие:
-
statusКод состояния переадресации -
exitНужно ли завершить выполнение скрипта после переадресации.
Если ваш ответ — строка или массив, не содержащий ключа 'url', он будет использован в качестве нового URL для переадресации.
Параметры
-
Controller$controller - Контроллер с компонентами для beforeRedirect
- строка|массив
$url - Строка или массив URL, на который выполняется переадресация.
- целое число
$statusнеобязательно null - Код состояния переадресации
- булево
$exitнеобязательно true - Завершить выполнение скрипта после переадресации.
Возвращает
массив|nullМассив или null.
Ссылка
http://book.cakephp.org/2.0/ru/controllers/components.html#Component::beforeRedirectbeforeRender()source public
beforeRender( Controller $controller )
Вызывается перед Controller::beforeRender(), перед загрузкой класса представления и перед Controller::render()
Параметры
-
Controller$controller - Контроллер с компонентами для beforeRender
Ссылка
http://book.cakephp.org/2.0/ru/controllers/components.html#Component::beforeRenderinitialize()source public
initialize( Controller $controller )
Вызывается перед Controller::beforeFilter().
Параметры
-
Controller$controller - Контроллер с компонентами для инициализации
Ссылка
http://book.cakephp.org/2.0/ru/controllers/components.html#Component::initializeshutdown()source public
shutdown( Controller $controller )
Вызывается после Controller::render() и перед выводом данных в браузер.
Параметры
-
Controller$controller - Контроллер с компонентами для завершения
Ссылка
http://book.cakephp.org/2.0/ru/controllers/components.html#Component::shutdownstartup()source public
startup( Controller $controller )
Вызывается после Controller::beforeFilter() и перед действием контроллера
Параметры
-
Controller$controller - Контроллер с компонентами для запуска
Ссылка
http://book.cakephp.org/2.0/ru/controllers/components.html#Component::startupМетоды, унаследованные от Object
_mergeVars()source protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойства $property этого объекта со свойствами в определении $class. Значение свойства этого класса будет объединённо поверх значения $class
Это обеспечивает некоторую DRY-магию CakePHP. Если вы хотите отключить её, переопределите этот метод как пустую функцию.
Параметры
- массив
$properties - Имя свойств для объединения.
- строка
$class - Класс для объединения свойства с.
- булево
$normalizeнеобязательно true - Установите в значение true, чтобы запустить свойства через Hash::normalize() перед объединением.
_set()source protected
_set( array $properties array() )
Позволяет установить несколько свойств объекта в одной строке кода. Будет устанавливать только свойства, которые являются частью объявления класса.
Параметры
- массив
$propertiesнеобязательно array() - Ассоциативный массив, содержащий свойства и соответствующие значения.
_stop()source protected
_stop( integer|string $status 0 )
Останов выполнения текущего скрипта. Оборачивает exit(), что упрощает тестирование.
Параметры
- целое число|строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
dispatchMethod()source public
dispatchMethod( string $method , array $params array() )
Вызывает метод этого объекта с заданными параметрами. Обеспечивает ОО-обертку для call_user_func_array
Параметры
- строка
$method - Имя метода для вызова
- массив
$paramsнеобязательно array() - Список параметров для использования при вызове $method
Возвращает
смешанноеВозвращает результат вызова метода
log()source public
log( string $msg , integer $type LOG_ERR , null|string|array $scope null )
Удобный метод для записи сообщения в CakeLog. Для получения дополнительной информации о записи в журналы, обратитесь к CakeLog::write().
Параметры
- строка
$msg - Сообщение журнала
- целое число
$typeнеобязательно LOG_ERR - Константа типа ошибки. Определено в app/Config/core.php.
- null|строка|массив
$scopeнеобязательно null Область(и), в которой создается сообщение журнала. Дополнительную информацию о пространствах имен журналов см. в CakeLog::config().
Возвращаемые значения
booleanРезультат записи в журнал
requestAction()source public
requestAction( string|array $url , array $extra array() )
Вызывает метод контроллера из любого места. Может использоваться для соединения контроллеров или связи плагинов с основным приложением. requestAction может быть использован для возвращения отрисованных представлений или извлечения возвращаемого значения из действий контроллера.
Внутри этого метода используется Router::reverse() для преобразования параметра $url в строковый URL. Следует использовать форматы URL, совместимые с Router::reverse().
Передача данных POST и GET
Данные POST и GET могут быть смоделированы в requestAction. Используйте $extra['url'] для данных GET. Параметр $extra['data'] позволяет моделировать данные POST.
Параметры
- строка|массив
$url Строка или URL на основе массива. В отличие от других массивов URL в CakePHP, этот URL не будет автоматически обрабатывать переданные и именованные аргументы в параметре $url.
- массив
$extraнеобязательно array() если массив содержит ключ "return", он устанавливает AutoRender в true. Также может использоваться для отправки данных GET/POST и именованных/переданных аргументов.
Возвращаемые значения
mixedБулево значение true или false при успехе/неудаче, или содержимое отрисованного действия, если в $extra установлен ключ "return".
toString()source public
toString( )
Преобразование объекта в строку. Каждый класс может переопределить этот метод по необходимости.
Возвращаемые значения
строкаИмя этого класса
© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/2.8/class-SessionComponent.html