Функција 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,
која рекурзивно ја повикува функцијата за елементите од низата