Symfony 如何使细枝日期可翻译
我在细枝中显示DateTime对象,如下所示:Symfony 如何使细枝日期可翻译,symfony,twig,Symfony,Twig,我在细枝中显示DateTime对象,如下所示: <td>{{ transaction.getDate|date("F - d - Y") }}</td> {{transaction.getDate}date(“F-d-Y”)} 现在我希望这个月可以翻译, 例如,2012年4月20日应显示为:Avril-20-2012 我可以这样做吗? 如果是,怎么做? 我正在做Symfony2 您可以获取月份部分,然后将其转换为: {% set month = tran
<td>{{ transaction.getDate|date("F - d - Y") }}</td>
{{transaction.getDate}date(“F-d-Y”)}
现在我希望这个月可以翻译,
例如,2012年4月20日
应显示为:Avril-20-2012
我可以这样做吗?
如果是,怎么做?
我正在做Symfony2 您可以获取月份部分,然后将其转换为:
{% set month = transaction.getDate|date('F') %}
{% set dayAndYear = transaction.getDate|date('d - Y') %}
{{ '%s - %s'|format(month|trans, dayAndYear) }}
另一个具有内联细枝解决方案和更可读的翻译消息文件的解决方案:
<td>{{ ('month.'~transaction.getDate|date("m"))|trans|raw~' - '~transaction.getDate|date("d - Y") }}</td>
说明:
使用~运算符将所有操作数转换为字符串并将其串联使用|运算符应用过滤器
使用trans函数进行翻译
使用raw表示日期是安全的(无需转义html、js…) 请小心使用括号,因为中定义了运算符优先级 运算符优先级如下,优先级最低的运算符列在第一位:b-and、b-xor、b-or、or和,==,!=,>= 或使用: 将为您提供如下信息:
jeudi 25 février 2016
要启用symfony 2,请添加到composer:
composer require twig/extensions
并通过以下服务激活过滤器:
services:
twig.extension.intl:
class: Twig_Extensions_Extension_Intl
tags:
- { name: twig.extension }
有什么好处吗?是的,那很有用!谢谢这个问题在很久以前就解决了。事实上,到目前为止,这是最好的答案。在我的例子中,{“now”| localizeddate('long','none')}就像我希望输出的符咒一样工作“3 de mayo de 1980'月名没有大写,我们应该如何处理月名的第一个大写字符?
composer require twig/extensions
services:
twig.extension.intl:
class: Twig_Extensions_Extension_Intl
tags:
- { name: twig.extension }