【发布时间】:2016-04-15 18:05:58
【问题描述】:
我正在开发一个 laravel (5.0) 应用程序,并且遇到了实现对另一种语言的支持的新要求。我做的一件好事是从一开始就实施本地化,所以现在我在 /resources/lang/ 下有两个文件夹,“en”用于英语,“es”用于西班牙语。
我使用trans 辅助函数在我的视图中显示字符串,如下所示:
{!! trans('front.views.index.empty_list') !!}
在我的/config/app.config 文件中,我已将语言环境定义为默认的“en”。对于这个应用程序,我现在使用两个域(.com - 表示英语,.es 表示西班牙语)。 .com 域是应用程序当前使用的域,.es 域设置为别名。
所以最终我的问题是,我如何在 Laravel 中实现某种检查,它定义了当前正在使用的域 - 我研究过的是 Group Routes,但我不确定我将如何使用它。我希望 .com 域显示英文(目前是这样),并且在使用 .es 时应该切换到西班牙文。
【问题讨论】:
-
@RiggsFolly 我正在为 Laravel 寻找一种根据域进行翻译的方法。如果是 .com,则应以英文显示。如果是 .es,它应该以西班牙语显示。在文档中,我没有看到可以实现这样的检查的方法。
-
preg_match('/yourdomain(.*)/', Request::root(), $tld)将为您提供顶级域名 -
Route::group(['domain' => 'yourdomain.{$tld}'], function () { // set locale/ redirection here }); -
@SasinduMendis 编辑:在我提交评论之前,您刚刚回答。谢谢,我试试看。