Главная/Статьи/Yii2: Шпаргалка по работе к куками
Yii2

Yii2: Шпаргалка по работе к куками

Важная особенность безопасности: все значения, отправляемые через компоненты request и response, подписываются секретным ключом, что защищает их от изменения на стороне пользователя.

Инициализация

Для начала работы с куками создаём переменную, хранящую объект ответа:

$cookies = Yii::$app->response->cookies;

Запись куки

$cookies->add(new \\yii\\web\\Cookie([
  'name' => 'name',
  'value' => $name
]));

Чтение куки

$cookies = Yii::$app->request->cookies;

// получение значения с запасным вариантом
$value = $cookies->getValue('name', 'default');

// получение через метод get()
$cookie = $cookies->get('name');
if ($cookie !== null) {
  $value = $cookie->value;
}

// проверка существования
if ($cookies->has('name')) { ... }

// доступ через массив
if (isset($cookies['name'])) { ... }

Удаление куки

$cookies = Yii::$app->response->cookies;
$cookies->remove('name');

Фреймворк автоматически криптографически подписывает данные кук, предотвращая их подмену на клиенте. Изменённые куки отклоняются компонентом request.