Php 使用会话在404页面中进行Laravel本地化
我使用session变量在中间件中设置了locale,除了404页面外,它工作正常。据我所知,会话变量和中间件都不能在异常处理程序中工作。这是我的密码: 路线:Php 使用会话在404页面中进行Laravel本地化,php,laravel,session,http-status-code-404,locale,Php,Laravel,Session,Http Status Code 404,Locale,我使用session变量在中间件中设置了locale,除了404页面外,它工作正常。据我所知,会话变量和中间件都不能在异常处理程序中工作。这是我的密码: 路线: Route::get('setlocale/{locale}', function ($locale) { if (in_array($locale, \Config::get('app.locales'))) { Session::put('locale', $locale); } return redi
Route::get('setlocale/{locale}', function ($locale) {
if (in_array($locale, \Config::get('app.locales'))) {
Session::put('locale', $locale);
}
return redirect()->back();
})->name('lang.switch');
中间件:
class Language
{
public function handle($request, Closure $next)
{
$raw_locale = Session::get('locale');
if (in_array($raw_locale, Config::get('app.locales'))) {
$locale = $raw_locale;
} else $locale = Config::get('app.locale');
App::setLocale($locale);
return $next($request);
}
}
有什么想法吗