Zend Framework 2 - 路由转换 - 通过URL设置区域设置

时间:2013-11-08 11:37:35

标签: php routing zend-framework2 translation

我目前正在尝试在ZF2项目中设置已翻译的路由。我已经按照这篇文章中的说明进行了操作:Zend Framework 2 - translating routes并让它发挥作用。

现在我遇到以下问题:我的网址将如下所示:

www.example.com/en/registration(英文)

www.example.com/de/anmeldung(同页德语)

要翻译{registration}部分,路由器需要预先设置的语言环境。但我希望能够使用URL参数(de / en)选择语言,因此我基本上必须在路由正在进行时设置路由器转换语言环境(MvcEvent :: EVENT_ROUTE)。有没有办法做到这一点?

我能够通过在路由开始之前手动解析请求uri来设置语言环境,但这不是最优雅的解决方案,可能会在以后导致错误。

非常感谢,

汉斯

1 个答案:

答案 0 :(得分:0)

看一下这个拉取请求:

https://github.com/zendframework/zf2/pull/5885

这个想法是根据路由的参数(即“locale”)设置翻译器的语言环境。使用此路线定义,您已准备就绪:

/:locale/{REGISTRATION}