Spec-Zone.ru › CakePHP 2.8

Класс CookieComponent

Компонент Cookie.

Обработка файлов cookie для контроллера.

Объект
Extended by Компонент
Extended by CookieComponent
Пакет: Cake\Контроллер\Компонент
Ссылка: http://book.cakephp.org/2.0/en/core-libraries/components/cookie.html
Авторские права: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
Лицензия: MIT Лицензия
Расположение: Cake/Controller/Component/CookieComponent.php

Резюме свойств

  • $_expires protected
    string
    Время истечения срока действия cookie
  • $_reset protected
    string
    Используется для сброса времени cookie, если $expire передан в CookieComponent::write()
  • $_response protected
    CakeResponse
    Ссылка на объект CakeResponse контроллера
  • $_type protected
    string
    Тип шифрования для использования.
  • $_values protected
    string
    Значения, хранящиеся в файле cookie.
  • $domain public
    string
    Путь домена.
  • $httpOnly public
    boolean
    Только HTTP cookie
  • $key public
    string
    Ключ шифрования.
  • $name public
    string
    Имя файла cookie.
  • $path public
    string
    Путь cookie.
  • $secure public
    boolean
    Только cookie HTTPS.
  • $time public
    mixed
    Время, в течение которого cookie будет действительным.

Унаследованные свойства

  • _Collection, _componentMap, components, settings

Резюме методов

  • __construct() public
    Конструктор
  • _decode() protected
    Декодирует и расшифровывает одно значение.
  • _decrypt() protected
    Расшифровывает $value с помощью метода public $type в классе Security
  • _delete() protected
    Устанавливает время истечения срока действия cookie для удаления значения cookie
  • _encrypt() protected
    Шифрует $value с помощью метода public $type в классе Security
  • _expire() protected
    Устанавливает время истечения срока действия переменной сессии.
  • _explode() protected

    Метод explode для возврата массива из строки, установленной в CookieComponent::_implode() Поддерживает обратную совместимость чтения с 1.x CookieComponent::_implode().

  • _implode() protected
    Метод implode для сохранения ключей в многомерных массивах
  • _write() protected
    Установка cookie
  • check() public
    Возвращает true, если заданная переменная установлена в cookie.
  • delete() public
    Удалить значение cookie
  • destroy() public
    Удалить текущее cookie
  • read() public
    Прочитать значение $_COOKIE[$key];
  • startup() public
    Запуск CookieComponent для использования в контроллере
  • type() public

    Позволяет переопределить метод шифрования по умолчанию. Используйте этот метод в ex: AppController::beforeFilter() до того, как вы прочитали или записали любые cookie.

  • write() public
    Записать значение в $_COOKIE[$key];

Подробное описание метода

__construct()source public

__construct( ComponentCollection $collection , array $settings array() )

Конструктор

Параметры

ComponentCollection $collection
ComponentCollection для этого компонента
array $settings optional array()
Массив настроек.

Переопределяет

Component::__construct()

_decode()source protected

_decode( string $value )

Декодирует и расшифровывает одно значение.

Параметры

string $value
Значение для декодирования и расшифрования.

Возвращает

string
Декодированное значение.

_decrypt()source protected

_decrypt( array $values )

Расшифровывает $value с помощью метода public $type в классе Security

Параметры

array $values
Значения для расшифрования

Возвращает

string
Расшифрованная строка

_delete()source protected

_delete( string $name )

Устанавливает время истечения срока действия cookie для удаления значения cookie

Параметры

string $name
Имя cookie

_encrypt()source protected

_encrypt( string $value )

Шифрует $value с помощью метода public $type в классе Security

Параметры

string $value
Значение для шифрования

Возвращает

string
Закодированные значения

_expire()source protected

_expire( integer|string $expires null )

Устанавливает время истечения срока действия переменной сессии.

Создает новое время истечения срока действия переменной сессии. $expire может быть либо целочисленной меткой времени Unix, либо строкой даты.

Используется в write() CookieComponent::write(string, string, boolean, 8400); CookieComponent::write(string, string, boolean, '5 Days');

Параметры

integer|string $expires optional null
Может быть меткой времени Unix или строкой даты

Возвращает

integer
Метка времени Unix

_explode()source protected

_explode( string $string )

Метод explode для возврата массива из строки, установленной в CookieComponent::_implode() Поддерживает обратную совместимость чтения с 1.x CookieComponent::_implode().

Параметры

string $string
Строка, содержащая закодированные в формате JSON данные или просто строка.

Возвращает

array
Карта ключей и значений

_implode()source protected

_implode( array $array )

Метод implode для сохранения ключей в многомерных массивах

Параметры

array $array
Карта ключей и значений

Возвращает

string
Строка, закодированная в формате JSON.
END_OF_DOCUMENT_MARKER

_write()source protected

_write( string $name , string $value )

Установить куки

Параметры

строка $name
Имя куки
строка $value
Значение куки

check()source public

check( string $key null )

Возвращает true, если заданная переменная установлена в куки.

Параметры

строка $key необязательно null
Имя переменной для проверки

Возвращает

boolean
True, если переменная существует

delete()source public

delete( string $key )

Удалить значение куки

Необязательно [Имя.], требуется ключ $this->Cookie->delete('Имя.ключ);

Этот метод необходимо использовать до отправки любого вывода в браузер. В противном случае возникнут ошибки «заголовок уже отправлен».

Этот метод удалит как куки верхнего уровня, так и куки второго уровня. Например, предполагая, что $name = App, удаление User удалит как App[User] , так и любые другие значения куки, например, App[User][email] Это делается для очистки хранилища куки с версии до 2.4.3, где куки хранились несогласованно.

Параметры

строка $key
Ключ значения, подлежащего удалению

Ссылка

http://book.cakephp.org/2.0/ru/core-libraries/components/cookie.html#CookieComponent::delete

destroy()source public

destroy( )

Удалить текущую куки

Этот метод необходимо использовать до отправки любого вывода в браузер. В противном случае возникнут ошибки «заголовок уже отправлен».

Ссылка

http://book.cakephp.org/2.0/ru/core-libraries/components/cookie.html#CookieComponent::destroy

read()source 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::read

startup()source public

startup( Controller $controller )

Запустить CookieComponent для использования в контроллере

Параметры

Controller $controller
Экземпляр контроллера.

Переопределяет

Component::startup()

type()source public

type( string $type 'cipher' )

Позволяет переопределить метод шифрования по умолчанию. Используйте этот метод в ex: AppController::beforeFilter() до чтения или записи куки.

Параметры

строка $type необязательно 'cipher'
Метод шифрования

write()source public

write( string|array $key , mixed $value null , boolean $encrypt true , integer|string $expires null )

Записать значение в $_COOKIE[$key];

Необязательно [Имя.], обязательный ключ, необязательное $value, необязательное $encrypt, необязательное $expires $this->Cookie->write('[Имя.]ключ, $value);

По умолчанию все значения шифруются. Вы должны передать $encrypt false, чтобы сохранить значения в открытом виде.

Этот метод необходимо использовать до отправки любого вывода в браузер. В противном случае возникнут ошибки «заголовок уже отправлен».

Параметры

строка|массив $key
Ключ значения
смешанный $value необязательно null
Значение
булево $encrypt необязательно true
Установить в true, чтобы зашифровать значение, в противном случае false
целое число|строка $expires необязательно null

Может быть либо количество секунд до истечения срока действия куки, либо смещение времени, совместимое с strtotime.

Ссылка

http://book.cakephp.org/2.0/ru/core-libraries/components/cookie.html#CookieComponent::write

Методы, унаследованные от Component

__get()source public

__get( string $name )

Магический метод для ленивой загрузки $components.

Параметры

строка $name
Имя компонента для получения.

Возвращает

смешанный
Объект компонента или 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::beforeRedirect

beforeRender()source public

beforeRender( Controller $controller )

Вызывается перед Controller::beforeRender(), и до загрузки класса представления, и перед Controller::render()

Параметры

Controller $controller
Контроллер с компонентами для beforeRender

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::beforeRender

initialize()source public

initialize( Controller $controller )

Вызывается перед Controller::beforeFilter().

Параметры

Controller $controller
Контроллер с компонентами для инициализации

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::initialize

shutdown()source public

shutdown( Controller $controller )

Вызывается после Controller::render() и перед выводом в браузер.

Параметры

Controller $controller
Контроллер с компонентами для завершения работы

Ссылка

http://book.cakephp.org/2.0/ru/controllers/components.html#Component::shutdown

Методы, унаследованные от 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

Возвращает

mixed
Возвращает результат вызова метода

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( )

Преобразование объекта в строку. Каждый класс может переопределить этот метод по мере необходимости.

Возвращает

string
Имя этого класса

Подробное описание свойств

$_expiressource

protected строка

Время истечения срока действия куки

Это контролируется CookieComponent::time;

$_resetsource

protected строка

Используется для сброса времени куки, если $expire передан в CookieComponent::write()

null

$_responsesource

protected CakeResponse

Ссылка на объект CakeResponse контроллера

null

$_typesource

protected строка

Тип шифрования для использования.

В настоящее время доступны два метода: cipher и rijndael. По умолчанию используется Security::cipher(). Cipher ужасно небезопасен и используется по умолчанию только из-за обратной совместимости. В новых приложениях вы всегда должны изменять это на 'aes' или 'rijndael'.

'cipher'

$_valuessource

protected строка

Значения, хранящиеся в куки.

Доступны в контроллере с помощью $this->Cookie->read('Name.key');

См.

CookieComponent::read();
array()

$domainsource

public строка

Путь домена.

Домен, в котором доступна куки.

Переопределяется с помощью контроллера перед фильтром: $this->Cookie->domain = '.example.com';

Чтобы сделать куки доступными для всех поддоменов example.com. Установите $this->Cookie->domain = '.example.com'; в вашем контроллере перед фильтром

''

$httpOnlysource

public булево

Куки только для HTTP

Установите в значение true, чтобы сделать куки только для HTTP. Куки, которые являются только для HTTP, недоступны в JavaScript.

false

$keysource

public строка

Ключ шифрования.

Переопределяется с помощью контроллера перед фильтром: $this->Cookie->key = 'SomeRandomString';

null

$namesource

public строка

Имя куки.

Переопределяется с помощью контроллера перед фильтром: $this->Cookie->name = 'CookieName';

'CakeCookie'

$pathsource

public строка

Путь куки.

Переопределяется с помощью контроллера перед фильтром: $this->Cookie->path = '/';

Путь на сервере, в котором будет доступна куки. Если public $cookiePath задан как '/foo/', куки будет доступна только в каталоге /foo/ и всех подкаталогах, таких как /foo/bar/ домена. Значение по умолчанию — весь домен.

'/'

$securesource

public boolean

Файл cookie, доступный только через HTTPS.

Переопределяется в контроллере перед фильтром; $this->Cookie->secure = true;

Указывает, что cookie должен передаваться только по защищенному соединению HTTPS. При установке в значение true cookie будет установлен только при наличии защищенного соединения.

false

$timesource

public mixed

Время, в течение которого cookie будет действительным.

Может быть либо целочисленной меткой времени Unix, либо строкой даты.

Переопределяется в контроллере перед фильтром; $this->Cookie->time = '5 Days';

null

© 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-CookieComponent.html

Spec-Zone.ru

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