laravel如何切换语言
Posted
技术标签:
【中文标题】laravel如何切换语言【英文标题】:How to switch between languages in laravell 【发布时间】:2021-11-26 20:49:56 【问题描述】:我是 laravell 的新手,想了解如何以最佳方式在两种语言之间切换。
我的网站只使用两种语言。我想构建一个简单的语言切换器。 这是我的 html -> 应该显示我想要切换到的语言。不显示当前语言。
例如。如果我在 www.test.com/en 我的 html 上说
<a class="lang-switch">German</a>
所以当我点击它时,我会登陆
www.test.com/de
现在我的 html 应该说
<a class="lang-switch">English</a>
这是我如何进行语言路由的。
Route::get('/locale?', function ($locale = null)
if (isset($locale) && in_array($locale, config('app.available_locales')))
app()->setLocale($locale);
return view('home');
);
Route::get('/locale?/contact/', function ($locale = null)
if (isset($locale) && in_array($locale, config('app.available_locales')))
app()->setLocale($locale);
return view('contact');
);
我需要这个开关才能在两个网站上工作,因为它是一个静态导航栏。
我在 app.php
文件中注册了我的语言环境
'available_locales' => [
'English' => 'en',
'German' => 'de',
],
我创建了一个语言控制器,但我不确定如何正确实现或使用它。
class LanguageController extends Controller
public function switchLang($lang)
if (array_key_exists($lang, Config::get('languages')))
Session::put('applocale', $lang);
return Redirect::back();
【问题讨论】:
【参考方案1】:app()->setLocale("de")
设置应用语言
app()->getLocale()
获取应用语言
您可能需要查看 laravel 文档以获取详细说明
https://laravel.com/docs/8.x/localization
【讨论】:
以上是关于laravel如何切换语言的主要内容,如果未能解决你的问题,请参考以下文章