mirror of
https://github.com/twigphp/Twig.git
synced 2026-09-24 09:08:38 +00:00
87ebfd4142
* 3.x: Add an additional example in the docs Fix ignored parenthesis in expressions Tweak previous merge Added details in the doc of filters and functions of IntlExtension Add more information about the filter and the negative operators Update plural.rst: Fixing filter name
50 lines
1.3 KiB
ReStructuredText
50 lines
1.3 KiB
ReStructuredText
``plural``
|
|
==========
|
|
|
|
The ``plural`` filter transforms a given noun in its singular form into its
|
|
plural version:
|
|
|
|
.. code-block:: twig
|
|
|
|
{# English (en) rules are used by default #}
|
|
{{ 'animal'|plural() }}
|
|
animals
|
|
|
|
{{ 'animal'|plural('fr') }}
|
|
animaux
|
|
|
|
.. note::
|
|
|
|
The ``plural`` filter is part of the ``StringExtension`` which is not
|
|
installed by default. Install it first:
|
|
|
|
.. code-block:: bash
|
|
|
|
$ composer require twig/string-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\String\StringExtension;
|
|
|
|
$twig = new \Twig\Environment(...);
|
|
$twig->addExtension(new StringExtension());
|
|
|
|
Arguments
|
|
---------
|
|
|
|
* ``locale``: The locale of the original string (limited to languages supported by the from Symfony `inflector`_, part of the String component)
|
|
* ``all``: Whether to return all possible plurals as an array, default is ``false``
|
|
|
|
.. note::
|
|
|
|
Internally, Twig uses the `pluralize`_ method from the Symfony String component.
|
|
|
|
.. _`inflector`: https://symfony.com/doc/current/components/string.html#inflector
|
|
.. _`pluralize`: https://symfony.com/doc/current/components/string.html#inflector
|