Класс CookieComponent
Компонент Cookie.
Обработка файлов cookie для контроллера.
- Объект
-
Компонент -
CookieComponent
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Ссылка: http://book.cakephp.org/2.0/ru/core-libraries/components/cookie.html
Расположено в Cake/Controller/Component/CookieComponent.php
Подробное описание методов
__constructисходный код public
__construct( ComponentCollection $collection , array $settings array() )
Конструктор
Параметры
-
ComponentCollection$collection - A ComponentCollection для этого компонента
- массив
$settingsнеобязательно array() - Массив настроек.
Переопределяет
Component::__construct() _decodeисходный код protected
_decode( string $value )
Декодирует и расшифровывает одно значение.
Параметры
- строка
$value - Значение для декодирования и расшифровки.
Возвращает
stringДекодированное значение.
_decryptисходный код protected
_decrypt( array $values )
Расшифровывает $value с помощью метода public $type в классе Security
Параметры
- массив
$values - Значения для расшифровки
Возвращает
stringРасшифрованная строка
_deleteисходный код protected
_delete( string $name )
Устанавливает время истечения cookie для удаления значения cookie
Параметры
- строка
$name - Имя cookie
_encryptисходный код protected
_encrypt( string $value )
Шифрует $value с помощью метода public $type в классе Security
Параметры
- строка
$value - Значение для шифрования
Возвращает
stringЗакодированные значения
_expireисходный код protected
_expire( integer|string $expires null )
Устанавливает время истечения для переменной сеанса.
Создаёт новое время истечения для переменной сеанса. $expire может быть либо целочисленной меткой времени Unix, либо строкой даты.
Используется методом write() CookieComponent::write(строка, строка, boolean, 8400); CookieComponent::write(строка, строка, boolean, '5 дней');
Параметры
- целое число|строка
$expiresнеобязательно null - Может быть либо меткой времени Unix, либо строкой даты
Возвращает
integerМетка времени Unix
_explodeисходный код protected
_explode( string $string )
Метод explode для возврата массива из строки, установленной в CookieComponent::_implode(). Сохраняет обратную совместимость чтения с 1.x CookieComponent::_implode().
Параметры
- строка
$string - Строка, содержащая данные, закодированные в формате JSON, или обычная строка.
Возвращает
arrayКарта ключа и значений
_implodeисходный код protected
_implode( array $array )
Метод implode для сохранения ключей в многомерных массивах
Параметры
- массив
$array - Карта ключа и значений
Возвращает
stringСтрока, закодированная в формате JSON.
_writeисходный код protected
_write( string $name , string $value )
Установить cookie
Параметры
- строка
$name - Имя cookie
- строка
$value - Значение cookie
checkисходный код public
check( string $key null )
Возвращает true, если заданная переменная установлена в cookie.
Параметры
- строка
$keyнеобязательно null - Имя переменной для проверки
Возвращает
booleanTrue, если переменная существует
deleteисходный код public
delete( string $key )
Удалить значение cookie
Необязательно [Имя.], требуется ключ $this->Cookie->delete('Имя.ключ');
Вы должны использовать этот метод до отправки любого вывода в браузер. В противном случае произойдёт ошибка "заголовок уже отправлен".
Этот метод удалит как верхнеуровневые, так и второуровневые cookie, установленные. Например, предположим, что $name = App, удаление User удалит как App[User], так и любые другие значения cookie, такие как App[User][email]. Это делается для очистки хранения cookie с версий до 2.4.3, где cookie хранились несоответственно.
Параметры
- строка
$key - Ключ значения для удаления
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/cookie.html#CookieComponent::deletedestroyисходный код public
destroy( )
Удалить текущую cookie
Вы должны использовать этот метод до отправки любого вывода в браузер. В противном случае произойдёт ошибка "заголовок уже отправлен".
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/cookie.html#CookieComponent::destroyreadисходный код public
read( string $key null )
Чтение значения $_COOKIE[$key];
Необязательно [Имя.], требуется ключ $this->Cookie->read(Имя.ключ);
Параметры
- строка
$keyнеобязательно null - Ключ значения для получения. Если не указан, получить карту ключ => значения
Возвращает
string|nullЗначение для заданного ключа
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/cookie.html#CookieComponent::readstartupисходный код public
startup( Controller $controller )
Инициализация CookieComponent для использования в контроллере
Параметры
-
Controller$controller - Экземпляр контроллера.
Переопределяет
Component::startup() typeисходный код public
type( string $type 'cipher' )
Позволяет переопределить метод шифрования по умолчанию. Используйте этот метод в примере: AppController::beforeFilter() перед чтением или записью cookie.
Параметры
- строка
$typeнеобязательно 'cipher' - Метод шифрования
writesource public
write( string|array $key , mixed $value null , boolean $encrypt true , integer|string $expires null )
Записать значение в $_COOKIE[$key];
Необязательное [Имя.], обязательный ключ, необязательное $значение, необязательное $шифрование, необязательное $срокДействия $this->Cookie->write('[Имя.]ключ, $значение);
По умолчанию все значения зашифрованы. Вы должны передать $encrypt false, чтобы хранить значения в открытом виде
Вы должны использовать этот метод до отправки любого вывода в браузер. В противном случае возникнут ошибки «заголовок уже отправлен».
Параметры
- строка|массив
$key - Ключ для значения
- смешанный
$valueнеобязательно null - Значение
- булево
$encryptнеобязательно true - Установить в значение true, чтобы зашифровать значение, иначе - false
- целое число|строка
$expiresнеобязательно null - Может быть либо количество секунд до истечения срока действия cookie, либо отметка времени, совместимая с strtotime.
Ссылка
http://book.cakephp.org/2.0/ru/core-libraries/components/cookie.html#CookieComponent::writeМетоды, унаследованные от Component
__getsource public
__get( string $name )
Магический метод для ленивой загрузки $components.
Параметры
- строка
$name - Имя компонента для получения.
Возвращает
mixedОбъект компонента или null.
beforeRedirectsource 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 - Будет ли сценарий завершён после переадресации.
Возвращает
array|nullЛибо массив, либо null.
Ссылка
http://book.cakephp.org/2.0/ru/controllers/components.html#Component::beforeRedirectbeforeRendersource public
beforeRender( Controller $controller )
Вызывается перед Controller::beforeRender(), перед загрузкой класса представления и перед Controller::render()
Параметры
-
Controller$controller - Контроллер с компонентами для beforeRender
Ссылка
http://book.cakephp.org/2.0/ru/controllers/components.html#Component::beforeRenderinitializesource public
initialize( Controller $controller )
Вызывается перед Controller::beforeFilter().
Параметры
-
Controller$controller - Контроллер с компонентами для инициализации
Ссылка
http://book.cakephp.org/2.0/ru/controllers/components.html#Component::initializeshutdownsource public
shutdown( Controller $controller )
Вызывается после Controller::render() и перед выводом данных в браузер.
Параметры
-
Controller$controller - Контроллер с компонентами для завершения работы
Ссылка
http://book.cakephp.org/2.0/ru/controllers/components.html#Component::shutdownМетоды, унаследованные от Object
_mergeVarssource protected
_mergeVars( array $properties , string $class , boolean $normalize true )
Объединяет свойства объекта $property со свойствами в определении $class. Значение этого класса для свойства будет объединено поверх значения $class.
Это обеспечивает часть DRY-магии, предоставляемой CakePHP. Если вы хотите отключить её, переопределите этот метод как пустую функцию.
Параметры
- массив
$properties - Имя свойств для объединения.
- строка
$class - Класс для объединения свойства.
- булево
$normalizeнеобязательно true - Установить в значение true, чтобы выполнить Hash::normalize() для свойств перед объединением.
_setsource protected
_set( array $properties array() )
Позволяет устанавливать несколько свойств объекта в одной строке кода. Будет устанавливать только те свойства, которые являются частью объявления класса.
Параметры
- массив
$propertiesнеобязательно array() - Ассоциативный массив, содержащий свойства и соответствующие значения.
_stopsource protected
_stop( integer|string $status 0 )
Останавливает выполнение текущего сценария. Оборачивает exit(), что облегчает тестирование.
Параметры
- целое число|строка
$statusнеобязательно 0 - см. http://php.net/exit для значений
dispatchMethodsource public
dispatchMethod( string $method , array $params array() )
Вызывает метод этого объекта с заданными параметрами. Предоставляет OO-обёртку для call_user_func_array
Параметры
- строка
$method - Имя вызываемого метода
- массив
$paramsнеобязательно array() - Список параметров для вызова $method
Возвращает
mixedВозвращает результат вызова метода
logsource 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Результат записи в лог
requestActionsource 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'.
toStringsource public
toString( )
Преобразование объекта в строку. Каждый класс может переопределить этот метод по необходимости.
Возвращает
stringИмя этого класса
Краткое описание свойств
Наследованные свойства от Component
$_Collectionsource
protected ComponentCollection
Класс коллекции компонентов, используемый для ленивой загрузки компонентов.
$_componentMapsource
protected array
Таблица поиска компонентов, используемая для ленивой загрузки объектов компонентов.
array()
© 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.7/class-CookieComponent.html