Laravel обновление до 6 - Аргумент 2 передан Symfony \ Component \ HttpFoundation \ Cook ie :: __ construct () должен иметь тип string или null, заданный массив - PullRequest
0 голосов
/ 09 марта 2020

Недавно произвел обновление моего Laravel приложения с 5.1 до 6.0.*. Следовал всем инструкциям, удалось запустить практически все, но эта ошибка продолжает появляться:

Аргумент 2, передаваемый Symfony \ Component \ HttpFoundation \ Cook ie :: __ construct (), должен иметь тип string или null, указанный массив, называемый в / home / zlatan / Projects / sberbank / vendor / laravel / framework / src / Осветить / Cookie / CookieJar. php в строке 70

Я провел некоторые исследования самостоятельно и мне удалось найти некоторые решения, но ни одно из них не помогло мне:

  1. Добавлено protected static $serialize = true; к EncryptCookies промежуточному программному обеспечению. Ссылка
  2. Очистка кэша приложения, файлов cookie, сеансов, представлений
  3. Сгенерирован новый ключ приложения

Следуя трассировке стека из вышеприведенного исключения, похоже, что эта строка кода ломает мое приложение:

return response()->view( $view, $data )->withCookie( cookie()->forever( session( 'section' ) . '_last', $content->id ) )->withCookie( cookie()->forever( session( 'section' ) . '_last_array', $array_cookie ) );

Где переменная $array_cookie действительно массив. Выглядит примерно так:

array:1 [▼
  51 => 69
]

Поскольку я не работал над этим приложением с самого начала, я не уверен, что должна делать эта строка кода, но угадать из сообщения об исключении я не могу передать массив в метод withCookies() больше. Любые решения? Спасибо за помощь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...