Функција array_reduce
Функција array_reduce своди (редукује)
низ на једну вредност користећи callback функцију.
У првом параметру функција прихвата низ, у другом - callback функцију, која ће се редом примењивати на сваки елемент низа.
У трећем опционом параметру
се налази почетна вредност, са које
ће почети редукција низа.
Подразумевано овај параметар има
вредност null.
Callback функција као параметре добија две вредности. Прва вредност садржи резултујућу вредност са претходне итерације. У случају прве итерације садржи вредност трећег параметра.
А друга вредност callback функције садржи тренутни елемент низа.
Callback ће се редом примењивати на сваки елемент низа. Оно што callback врати на тренутној итерацији, ући ће у први параметар callback функције на следећој итерацији.
На тај начин, callback ће се секвенцијално
применити на сваки елемент низа
редом и на крају ће се добити нека
вредност. Та вредност ће бити резултат
рада функције array_reduce.
Синтакса
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
Пример
Хајде да нађемо збир елемената низа:
<?php
$arr = [1, 2, 3, 4, 5];
function func($prev, $elem)
{
return $prev + $elem;
}
$res = array_reduce($arr, 'func', 0);
echo $res;
?>
Резултат извршавања кода:
15
Погледајте такође
-
функцију
array_map,
која примењује функцију на елементе низа -
функцију
array_walk,
која позива функцију за елементе низа -
функцију
array_filter,
која филтрира низ -
функцију
array_walk_recursive,
која рекурзивно позива функцију за елементе низа