reduce
New in version 1.41: The reduce
filter was added in Twig 1.41.
The reduce
filter iteratively reduces a sequence or a mapping to a single value using an arrow function, so as to reduce it to a single value. The arrow function receives the return value of the previous iteration and the current value of the sequence or mapping:
{% set numbers = [1, 2, 3] %}
{{ numbers|reduce((carry, v) => carry + v) }}
{# output 6 #}
The reduce
filter takes an initial
value as a second argument:
{{ numbers|reduce((carry, v) => carry + v, 10) }}
{# output 16 #}
Note that the arrow function has access to the current context.
Arguments
-
arrow
: The arrow function -
initial
: The initial value
© 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/1.x/filters/reduce.html