المرشح format_datetime في Twig

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث

المرشح format_datetime يغير تنسيق الوقت والتاريخ:

{# 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:

$ composer require twig/extra-bundle

أما غير ذلك فأضف التوسيع صراحة إلى بيئة Twig:

use Twig\Extra\Intl\IntlExtension;

$twig = new \Twig\Environment(...);
$twig->addExtension(new IntlExtension());

الوسائط

  • locale: الإعدادات المحلية.
  • dateformat: صيغة التاريخ.
  • timeformat: صيغة الوقت.
  • pattern: نمط التاريخ والوقت.
  • timezone: المنطقة الزمنية.
  • calender: التقويم (يكون ميلاديًا افتراضيًا).

انظر أيضًا

المصادر