2017-10-09 59 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