Свежайшие Пирожки от CakePHP по-русски

Полнейшее руководство CakePHP 1.2 на русском языке, горячие новости и полезные статьи

Использование компонента

Этот раздел описывает работу с методами CookieComponent.

write(mixed $key, mixed $value, boolean $encrypt, mixed $expires)

Метод write() является сердцем компонента cookie, $key - это любое название переменной куки, а $value - это данные которые должны быть сохранены.

Простой текст
  1. $this->Cookie->write('name','Федя');

Вы также можете групировать переменные используя символ "."(точка) в параметре key.

Простой текст
  1. $this->Cookie->write('User.name', 'Федя');
  2. $this->Cookie->write('User.role','Директор');

Если вы хотите записать более одного значения в куки одновременно, то вы можете передать массив:

Простой текст
  1. $this->Cookie->write(
  2. array('name'=>'Федя','role'=>'Директор')
  3. );

Все значения куки по умолчанию шифруются. Если вы хотите сохранить значение в виде простого текста, то установите третий параметр метода write() в false.

Простой текст
  1. $this->Cookie->write('name','Федя',false);

Последний параметр метода write() это$expires – количество секунд хранения куки. По соглашению, этот параметр также может быть установлен в виде строки, которую будет понимать php функция strtotime():

Простой текст
  1. //Обе куки истекут через час.$this->Cookie->write('first_name','Федя',false, 3600);
  2. $this->Cookie->write('last_name','Пупкин',false, '1 hour');

read(mixed $key)

Этот метод используется для чтения значения переменной куки указанной в $key.

Простой текст
  1. // Выведет “Федя”
  2. echo $this->Cookie->read('name');
  3. //You can also use the dot notation for read
  4. echo $this->Cookie->read('User.name');
  5. //Для получения сгруппированных переменных можно точку не использовать
  6. $this->Cookie->read('User');
  7. // выведет что-то типа array('name' => 'Федя', 'role'=>'Директор')
del(mixed $key)

Удаляет пременую куки с именем $key.

Простой текст
  1. //Удаление переменной
  2. $this->Cookie->del('bar')
  3. $this->Cookie->del('foo.bar')
destroy()

Разрушает текущую куку.