المرشح format_number في Twig

من موسوعة حسوب
مراجعة 19:15، 5 مايو 2021 بواسطة جميل-بيلوني (نقاش | مساهمات)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

المرشح format_number يغير تنسيق الصيغ العددية:

{{ '12.345'|format_number }}

يمكن تمرير السمات إليه من أجل تعديل الخرج كما يلي:

{# 12.34 #}
{{ '12.345'|format_number({rounding_mode: 'floor'}) }}

{# 1000000.0000 #}
{{ '1000000'|format_number({fraction_digit: 4}) }}

قائمة الخيارات المدعومة هي:

  • grouping_used
  • decimal_always_shown
  • max_integer_digit
  • min_integer_digit
  • integer_digit
  • max_fraction_digit
  • min_fraction_digit
  • fraction_digit
  • multiplier
  • grouping_size
  • rounding_mode
  • rounding_increment
  • format_width
  • padding_position
  • secondary_grouping_size
  • significant_digits_used
  • min_significant_digits_used
  • max_significant_digits_used
  • lenient_parse


يستطيع المرشح أن ينسق صيغًا عددية كثيرة غير الأعداد الصحيحة، انظر:

{# 1,234% #}
{{ '12.345'|format_number(style='percent') }}

{# twelve point three four five #}
{{ '12.345'|format_number(style='spellout') }}

{# 12 sec. #}
{{ '12'|format_duration_number }}

الصيغ الرقمية التي يمكن تنسيقها هي:

  • decimal
  • currency
  • percent
  • scientific
  • spellout
  • ordinal
  • duration


تُستخدم مرشحات format_*_number كاختصار عن طريق استبدال الصيغة المطلوبة بمحرف * الموجود في الاختصار:

{# 1,234% #}
{{ '12.345'|format_percent_number }}

{# twelve point three four five #}
{{ '12.345'|format_spellout_number }}

تمرَّر السمات من أجل التعديل على الخرج كما يلي:

{# 12.3% #}
{{ '0.12345'|format_percent_number({rounding_mode: 'floor', fraction_digit: 1}) }}

يستخدم المرشح الإعدادات المحلية افتراضيًا، وتمرَّر إليه صراحة كما يلي:

{# 12,345 #}
{{ '12.345'|format_number(locale='fr') }}

لاحظ أن المرشح format_number جزء من 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: الإعدادات المحلية.
  • attrs: خريطة السمات.
  • style: صيغة العدد المُخرج.

انظر أيضًا

المصادر