Yii2 куда теряется кука при переходе на другую страницу? на странице site.ru/site/index Добавляю новую куку:$cookies = Yii::$app->response->cookies; // добавление новой куки в HTTP-ответ $cookies->add(new \yii\web\Cookie([ 'name' => 'language', 'value' => 'zh-CN', ])); после чего перехожу на любую другую страницу, и при попытке вывести куку с помощью команды $cookies = Yii::$app->response->cookies; print_r($cookies); Выдает пустой массивyii\web\CookieCollection Object ( [readOnly] => [_cookies:yii\web\CookieCollection:private] => Array ( ) ) Но при таком способе вывода print_r($_COOKIE); Все же нахожу свою кукуArray ( [advanced-frontend] => d302qt09a66ufpa6h8pf9sbqn1 [_csrf-frontend] => 45e72fe5c56707ee174e40397a050ee2c05dca4b12a1d928d14256434010de98a:2:{i:0;s:14:"_csrf-frontend";i:1;s:32:"8gj4-V-HDakUKW9E39XMJ6EEcsR6_bDW";} [language] => f1dc92de966487919bea9a0e6e5240af52c079c42ef8afbad662ba53fc89a2ffa:2:{i:0;s:8:"language";i:1;s:5:"zh-CN";} ) Подскажите пожалуйста, где ошибка. Почему куки не видно при попытке обращения к ней средствами Yii2?
Проблема здесь в том, что вы смотрите на куки через объект $cookies, который является частью response, а вам нужно обращаться к request, чтобы получить куки.
Проблема здесь в том, что вы смотрите на куки через объект $cookies, который является частью response, а вам нужно обращаться к request, чтобы получить куки.
Вы можете получить куки таким образом:
$cookies = Yii::$app->request->cookies;$language = $cookies->getValue('language');
Попробуйте использовать этот код для получения куки на других страницах в Yii2. Надеюсь, это поможет вам решить проблему.