Laravel多语言支持

时间:2015-11-01 12:38:00

标签: php laravel

我想让我的网站支持多种语言,但我的代码不起作用:

路线:

Route::get('lang/{lang}', function($lang){
    Session::put('lang', $lang);
    return Redirect::to('/');
});

主页:

<a href="{{ URL::to('lang/fa') }}">[Farsi]</a>
<a href="{{ URL::to('lang/en') }}">[English]</a>

语言文件夹:

fa文件夹包含messages.php

return array(
    'mainpage'=>'صفحه اصلی',
);

en文件夹包含messages.php

return array(
    'mainpage'=>'Main Page`,
);

现在我正在尝试使用此数组来支持多语言,我正在使用此代码在语言之间切换:

{{ Lang::get('messages.mainpage') }}

1 个答案:

答案 0 :(得分:0)

问题解决了,感谢@rezakho,

将此行添加到route.php

if ( Session::has('lang') ) {
        App::setLocale(Session::get('lang'));
    }

或者您更改了before文件中的filters.php

App::before(function($request)
{
    if ( Session::has('lang') ) {
        App::setLocale(Session::get('lang'));
    }
});