我知道如何使用App :: setLocale在设备中设置默认语言(' es');
我正考虑在用户登录后为每个用户设置个人语言。
目前,我唯一想到的方法是在Lang :: get()命令中设置通用语言和使用变量:
$user_language = 'gr';
Lang::get('messages.welcome'.$user_language);
是否有其他方法为每个用户设置语言设置?
答案 0 :(得分:6)
如果用户已登录,为什么不使用App::setLocale()
根据用户首选项设置语言。根据Laravel Docs:
您可以随时使用
App::setLocale
方法更改活动语言。
所以你可以这样做:
App::before(function($request)
{
// If user is logged in
if (Auth::check())
{
// Get the user specific language
$lang = Auth::user()->language;
// Set the language
App::setLocale($lang);
}
});