如何在 Laravel 5.3 中获取视图中的当前语言环境
How to fetch current locale in view in Laravel 5.3
我正在制作一个双语应用程序。我对每种语言都使用相同的路线,但我对两种语言使用不同的视图。每当我想重定向到我想通过 {{ route('test.route', 'en') }}
的路线时。在我传递 en
的地方,我想从视图中获取当前语言环境值,然后将其传递给路由。请帮忙。
试试这个。它将在您的应用程序中提供区域设置
Config::get('app.locale')
编辑:
要在 blade 中使用它,请像下面这样使用,以在 blade 中呼应您当前的语言环境。
{{ Config::get('app.locale') }}
如果你想在它周围的 blade 中做一个 if 条件,它将变成,
@if ( Config::get('app.locale') == 'en')
{{ 'Current Language is English' }}
@elseif ( Config::get('app.locale') == 'ru' )
{{ 'Current Language is Russian' }}
@endif
要获取当前语言环境,
app()->getLocale()
首先创建一个语言环境路由和控制器:
Route::get('/locale/{lang}', 'LocaleController@setLocale')->name('locale');
class LocaleController extends Controller
{
public function setLocale($locale)
{
if (array_key_exists($locale, Config::get('languages')))
{
Session::put('app_locale', $locale);
}
return redirect()->back();
}
}
现在您可以轻松查看每个页面:
$locale = app()->getLocale();
$version = $locale == 'en' ? $locale . 'English' : 'Bangla';
我正在制作一个双语应用程序。我对每种语言都使用相同的路线,但我对两种语言使用不同的视图。每当我想重定向到我想通过 {{ route('test.route', 'en') }}
的路线时。在我传递 en
的地方,我想从视图中获取当前语言环境值,然后将其传递给路由。请帮忙。
试试这个。它将在您的应用程序中提供区域设置
Config::get('app.locale')
编辑:
要在 blade 中使用它,请像下面这样使用,以在 blade 中呼应您当前的语言环境。
{{ Config::get('app.locale') }}
如果你想在它周围的 blade 中做一个 if 条件,它将变成,
@if ( Config::get('app.locale') == 'en')
{{ 'Current Language is English' }}
@elseif ( Config::get('app.locale') == 'ru' )
{{ 'Current Language is Russian' }}
@endif
要获取当前语言环境,
app()->getLocale()
首先创建一个语言环境路由和控制器:
Route::get('/locale/{lang}', 'LocaleController@setLocale')->name('locale');
class LocaleController extends Controller
{
public function setLocale($locale)
{
if (array_key_exists($locale, Config::get('languages')))
{
Session::put('app_locale', $locale);
}
return redirect()->back();
}
}
现在您可以轻松查看每个页面:
$locale = app()->getLocale();
$version = $locale == 'en' ? $locale . 'English' : 'Bangla';