``format_number`` ================= The ``format_number`` filter formats a number: .. code-block:: twig {{ '12.345'|format_number }} You can pass attributes to tweak the output: .. code-block:: twig {# 12.34 #} {{ '12.345'|format_number({rounding_mode: 'floor'}) }} {# 1000000.0000 #} {{ '1000000'|format_number({fraction_digit: 4}) }} The list of supported options: * ``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``. Besides plain numbers, the filter can also format numbers in various styles: .. code-block:: twig {# 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 }} The list of supported styles: * ``decimal``; * ``currency``; * ``percent``; * ``scientific``; * ``spellout``; * ``ordinal``; * ``duration``. As a shortcut, you can use the ``format_*_number`` filters by replacing `*` with a style: .. code-block:: twig {# 1,234% #} {{ '12.345'|format_percent_number }} {# twelve point three four five #} {{ '12.345'|format_spellout_number }} You can pass attributes to tweak the output: .. code-block:: twig {# 12.3% #} {{ '0.12345'|format_percent_number({rounding_mode: 'floor', fraction_digit: 1}) }} By default, the filter uses the current locale. You can pass it explicitly: .. code-block:: twig {# 12,345 #} {{ '12.345'|format_number(locale='fr') }} .. note:: The ``format_number`` filter is part of the ``IntlExtension`` which is not installed by default. Install it first: .. code-block:: bash $ composer require twig/intl-extra Then, on Symfony projects, install the ``twig/extra-bundle``: .. code-block:: bash $ composer require twig/extra-bundle Otherwise, add the extension explicitly on the Twig environment:: use Twig\Extra\Intl\IntlExtension; $twig = new \Twig\Environment(...); $twig->addExtension(new IntlExtension()); Arguments --------- * ``locale``: The locale * ``attrs``: A map of attributes * ``style``: The style of the number output