如何在Symfony 2.3中获取当前的语言环境?
我有一个这样的网址: /{_locale}/blog/article
FR 作为默认参数。我尝试以下方法: $this->get('request')->getLocale()
但它总是给我默认参数。我知道我可以使用$this->get('session')->set('_locale', 'fr');
但问题是,当用户第一次访问我的网站时,他的会话中没有存储任何东西。
你可以通过这个来获取当前的语言环境
$request = $this->get('request');
echo $request->getLocale();
只需在Symfony 4中使用$request->getLocale();
,因为当您在Google中搜索此主题时,这似乎是顶部链接。
- 如果要访问服务或控制器中的区域设置,可以使用
@request_stack
注入RequestStack
。 -
RequestStack
getCurrentRequest()
获取当前请求的方法。然后,您可以使用getLocale()
获取用户当前区域设置。