是否可以在Symfony2(example.com/fr/page)中使用不同的语言,但英语也默认为example.co


Is it possible to have different languages in Symfony2 (example.com/fr/page) but also default to example.com/page for English?

我正试图找到一种方法来设置支持语言的Symfony2,但如果没有输入语言,它将默认为默认语言。

所以基本上我想允许这些URL用于"页面"页面:

example.com/page
example.com/fr/page
example.com/de/page

等等。。。

如果你总是指定一种语言(例如.com/en/page),我可以很容易地做到,但我不希望这样。我希望我的链接是这样的英语:

example.com
example.com/page
example.com/about

如果用户更改语言,则将其附加到URL:

example.com/fr
example.com/fr/page
example.com/fr/about

我目前使用这个,但我必须在每个请求中指定一种语言:

the_site:
    resource: "@MyBundle/Resources/config/routing.yml"
    prefix:   /{_locale}
    requirements:
     _locale: en|fr|es|de

我认为这不可能??

您应该使用JMSI18nRoutingBundle。场景#2(在文档中描述)就是您想要的。