format_datetime
Фильтр format_datetime форматирует дату и время:
public function formatDateTime(Environment $env, $date, ?string $dateFormat = ‘medium’, ?string $timeFormat = ‘medium’, string $pattern = ‘’, $timezone = null, string $calendar = ‘gregorian’, string $locale = null): string
{# Aug 7, 2019, 11:39:12 PM #}
{{ '2019-08-07 23:39:12'|format_datetime() }}
Вы можете настроить вывод для части даты и части времени:
{# 23:39 #}
{{ '2019-08-07 23:39:12'|format_datetime('none', 'short', locale='fr') }}
{# 07/08/2019 #}
{{ '2019-08-07 23:39:12'|format_datetime('short', 'none', locale='fr') }}
{# mercredi 7 août 2019 23:39:12 UTC #}
{{ '2019-08-07 23:39:12'|format_datetime('full', 'full', locale='fr') }}
Поддерживаются значения: none, short, medium, long, и full.
Для большей гибкости вы можете определить собственный шаблон (см. руководство ICU по шаблонам).
{# 11 oclock PM, GMT #}
{{ '2019-08-07 23:39:12'|format_datetime(pattern="hh 'oclock' a, zzzz") }}
По умолчанию фильтр использует текущий язык. Вы можете явно указать его:
{# 7 août 2019 23:39:12 #}
{{ '2019-08-07 23:39:12'|format_datetime(locale='fr') }}
Примечание
Фильтр format_datetime является частью IntlExtension, который не установлен по умолчанию. Установите его сначала:
$ composer require twig/intl-extra
Затем используйте фильтр twig/extra-bundle в проектах Symfony или явно добавьте расширение в среду Twig:
use Twig\Extra\Intl\IntlExtension;
$twig = new \Twig\Environment(...);
$twig->addExtension(new IntlExtension());
Аргументы
-
locale: Язык -
dateFormat: Формат даты -
timeFormat: Формат времени -
pattern: Шаблон даты и времени
© 2009–2018 by the Twig Team
Licensed under the three clause BSD license.
The Twig logo is © 2010–2020 Symfony
https://twig.symfony.com/doc/3.x/filters/format_datetime.html