2017-10-09 57 views
0

最有可能是愚蠢的问题,但我不明白怎么做。的Symfony,如何获得本地化的日期

内的控制器,我需要使用$myObj->getData()->format('d-M-Y'),我希望得到一个本地化的字符串太(在意大利,而不是比英文)。

在一根树枝模板,我通过{{ myobj.data|localizeddate('long', 'none', app.request.locale) }}得到它,但我不知道前一种情况类似的伎俩。


是的,我发现怎么做(感谢ccKep):

$cal = IntlCalendar::fromDateTime($oldObj->getData()->format('d-M-Y')." Europe/Rome");

$newObj->setField("my date is ". IntlDateFormatter::formatObject($cal, "d MMMM YYYY", 'it_IT')."");

+0

看看[datefmt_format](http://php.net/manual/de/intldateformatter.format.php)。 – ccKep

回答

0

在控制器你可以使用国际机场。例如:

$intl = new \IntlDateFormatter($request->getLocale(), \IntlDateFormatter::LONG, \IntlDateFormatter::NONE, null, null, 'd-LLL-y'); 

$date = $intl->format(new \DateTime('now')); 
+0

谢谢,但我不知道如何在我的情况下使用您的代码;我已经有了一个对象,我需要得到它的日期,然后根据本地进行格式化。 – mario