首页 > 解决方案 > 如何使用 HTTP_ACCEPT_LANGUAGE 更改 Laravel 应用程序的语言?

问题描述

当用户访问它具有“/”、“faq”、“user/1/edit”的任何网址时,我正在尝试更改我的 Laravel 应用程序的语言,我知道我可以使用该请求来了解服务器接受的语言:

$locale = request->server('HTTP_ACCEPT_LANGUAGE');

我已经在处理我的资源/语言文件了。

问题是:如果用户获得了指向其中一个页面的直接链接并且正在加载它,那么无论他们要去哪条路线,我如何更改语言并以他的语言显示页面?

标签: phplaravellang

解决方案


创建一个分配给所有应该翻译的路由的中间件,并使用具有正确值的 App::setLocale() (我相信您想从浏览器的 Accept-Language 标头中获取它)


推荐阅读