【发布时间】:2018-05-15 02:09:02
【问题描述】:
我已经有 php 文件,其中包含 pt-br 和 es 的 tradutions。现在我必须创建 2 个按钮来将语言环境切换为 es 和 pt。我正在使用 php/laravel。
【问题讨论】:
-
在这里找到了非常完美的答案:stackoverflow.com/questions/42395481/…
我已经有 php 文件,其中包含 pt-br 和 es 的 tradutions。现在我必须创建 2 个按钮来将语言环境切换为 es 和 pt。我正在使用 php/laravel。
【问题讨论】:
使用这些行设置语言环境。
Route::get('switch/{locale}', function ($locale) {
App::setLocale($locale);
});
【讨论】:
如果您想通过 url 设置语言环境,您可能需要在 RouteServiceProvider.php 中添加这些行。
public function boot()
{
I18n::bootI18nService();
parent::boot();
}
在I18n::bootI18nService() 中,做类似的事情
$language = Request::segment(1);
App::setLocale($language);
在你的 routes/web.php 的开头,添加
Route::prefix(App::getLocale())->group(function (){
// your routes
})
然后,如果您访问 yoursite.com/en/blabla,您的网站将显示英文翻译。
这只是一个粗略的解决方法,实际代码应该更加健壮。
【讨论】: