Недавно произвел обновление моего 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
Я провел некоторые исследования самостоятельно и мне удалось найти некоторые решения, но ни одно из них не помогло мне:
- Добавлено
protected static $serialize = true;
к EncryptCookies
промежуточному программному обеспечению. Ссылка - Очистка кэша приложения, файлов cookie, сеансов, представлений
- Сгенерирован новый ключ приложения
Следуя трассировке стека из вышеприведенного исключения, похоже, что эта строка кода ломает мое приложение:
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()
больше. Любые решения? Спасибо за помощь.