在从laravel 4中搜索文档后,我发现设置语言的方法是执行
App::setLocale('en');
但是,我如何将其与我网站上的语言切换器结合使用,例如,访问者可以点击该切换器来动态更改语言?用饼干什么的记住这件事?
在laravel 3中,这似乎要容易得多,但由于我是laravel的新手,我不知道如何解决这个问题,所以如果有人知道该做什么并能帮助我,那就太好了:)
这是一种方法:
为您的语言选择器创建一条路线:
Route::get('language/{lang}',
array(
'as' => 'language.select',
'uses' => 'LanguageController@select'
)
);
在Laravel Blade的视图中创建语言选择器链接:
<html><body>
Please select a Language:
{{link_to_route('language.select', 'English', array('en'))}}
{{link_to_route('language.select', 'Portuguese', array('pt'))}}
</body></html>
控制器:
Class LanguageController extends BaseController {
public function select($lang)
{
Session::put('lang', $lang);
return Redirect::route('home');
}
}
然后在你的应用程序/start/global.php中,你可以:
App::setLocale(Session::get('lang', 'en'));
Laravel有一个很棒的库,允许您灵活地处理区域设置-mcamara-Laravel本地化。在项目的自述文件中,您可以找到如何实现这样一个切换器的示例。