2013-06-28 17 views

回答

45

樹枝國際機場擴建

可以使用Twig Intl Extensionfabpot官方枝條延伸repository發現。

它提供了本地化的日期過濾器可以這樣使用:

{{ date | localizeddate('full', 'none', app.request.locale) }} 

app.request.locale使用作爲第三個參數爲當前區域設置或只是'sv'

集成到你的項目

使用官方的擴展添加到您的composer.json

composer require twig/extensions:1.0.*@dev 
composer update twig/extensions 

config.yml

#enable intl extensions 
services: 
    twig.extension.intl: 
     class: Twig_Extensions_Extension_Intl 
     tags: 
      - { name: twig.extension } 

快速提示:

另一個方便的擴展是文本擴展提供截斷 ...等過濾器

services: 
    twig.extension.text: 
     class: Twig_Extensions_Extension_Text 
     tags: 
      - { name: twig.extension } 
+0

謝謝,我現在正在嘗試這個,因爲本網站上的所有日期應該用相同的語言打印,那麼最好不要重複{{date |本地化日期('全','無',* myLocaleValueFromParameters.yml *)}}在每一個地方? 會寫一個樹枝宏或枝條擴展是最好的方式去? 我覺得很奇怪,沒有針對 – Tirithen

+1

中已經構建的parameters.locale鍵的實現,你可以使用本地化的日期過濾器,並使用'twig.globals.global_locale:%'將'parameters.default_locale'作爲全局進行分枝。 default_locale%',然後使用'{{date | localizeddate('full','none',global_locale)}}' – nifr

+0

謝謝!我會和它一起製作一個樹枝宏,它使用日期對象並使用本地化日期過濾器對其進行格式化,以防止模板中的重複。 :) – Tirithen

2

|date過濾器的使用DateTime::format函數犯規支持的語言環境。請參閱this question並編寫自己的樹枝擴展。

+0

自己的樹枝延伸是不需要的:)看到我的答案。 – nifr

+0

如果你想包括整個捆綁小功能$) –

+0

@nifr需要自己的樹枝擴展。提供的答案需要更改所有'|日期'過濾器的樹枝文件,聽起來像一個解決方法,而不是一個健壯的解決方案。 – Trix

相關問題