[英]Multilanguage in Symfony2 and Twig
如何在Symfony中創建多語言頁面? 在Symfony 1.0中,Jobeet教程有很好的描述。 但現在在symfony.com上,我還沒有看到與翻譯頁面有關的事情。 在symfony 1.4中,echo __('text'); 使用,但現在使用Symfony 2 TWIG。
Symfony2網站上有一個關於此的文檔部分。
你可以在這里查看: 翻譯
基本上,您可以在路由中訪問名為_locale
的特殊屬性,該屬性放在您的URL中,並將用於在會話中設置區域設置。 請注意,使用此方案時,區域設置值將自動設置為Symfony2的Session
http://www.host.com/en/contact // English version
http://www.host.com/fr/contact // French version
您還可以在路由中指定默認的_locale
值,因此不必在URL中提供區域設置。
http://www.host.com/contact // English version if default _locale is 'en'
然后,在樹枝中,您使用特殊的變換器trans
和transchoice
來翻譯消息。 您的消息可以是用作密鑰的密鑰或自然語言消息,通常是英語。
{{ 'user.prompt.welcome' | trans }} {# Key message #}
{{ 'Welcome to our site' | trans }} {# Natural language message #}
轉換消息的語言環境取自會話,因此更改會話中的語言環境(通過url或programmaticaly)會將轉換更改為其他內容。
這使用了引擎蓋下的translator
服務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.