使用 Symfony 2 将日期本地化为树枝
2022-08-31 00:10:52
要用树枝设置日期格式,通常使用如下方法:
{{ meeting.date|date("m/d/Y") }}
现在,我必须本地化此日期(美国 m/d/y,NL d/m/y)。在树枝上执行此操作的最佳做法是什么?我确实使用Symfony 2,解决方法是在控制器中进行转换,但我想在树枝中执行此操作。
要用树枝设置日期格式,通常使用如下方法:
{{ meeting.date|date("m/d/Y") }}
现在,我必须本地化此日期(美国 m/d/y,NL d/m/y)。在树枝上执行此操作的最佳做法是什么?我确实使用Symfony 2,解决方法是在控制器中进行转换,但我想在树枝中执行此操作。
我不想仅仅为了这些东西而安装整个扩展,并且需要自动做一些事情:也可以在Bundle/Twig/Extensions中编写一个helperclass(或扩展现有的帮助程序),例如:
public function foo(\Datetime $datetime, $lang = 'de_DE', $pattern = 'd. MMMM Y')
{
$formatter = new \IntlDateFormatter($lang, \IntlDateFormatter::LONG, \IntlDateFormatter::LONG);
$formatter->setPattern($pattern);
return $formatter->format($datetime);
}
树枝模板:
{{ yourDateTimeObject|foo('en_US', 'd. MMMM Y') }}
其结果是 “12.2014 年 2 月“(或”12.2014 年 2 月“de_DE等)