Funkcia array_reduce
Funkcia array_reduce redukuje
pole na jednu hodnotu pomocou spätného volania.
V prvom parametri funkcia prijíma pole, v druhom - spätné volanie, ktoré bude postupne aplikované na každý prvok pola.
V treťom voliteľnom parametri
je počiatočná hodnota, od ktorej
začína redukcia poľa.
Predvolene má tento parameter
hodnotu null.
Funkcia-spätné volanie prijíma ako parametre dve hodnoty. Prvá hodnota obsahuje výslednú hodnotu z predchádzajúcej iterácie. V prípade prvej iterácie obsahuje hodnotu tretieho parametra.
A druhá hodnota spätného volania obsahuje aktuálny prvok poľa.
Spätné volanie bude postupne aplikované na každý prvok poľa. To, čo vráti spätné volanie v aktuálnej iterácii, sa dostane do prvého parametra spätného volania v nasledujúcej iterácii.
Takto sa spätné volanie postupne
aplikuje na každý prvok poľa
jeden po druhom a nakoniec vznikne nejaká
hodnota. Táto hodnota bude výsledkom
činnosti funkcie array_reduce.
Syntax
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
Príklad
Nájdime súčet prvkov poľa:
<?php
$arr = [1, 2, 3, 4, 5];
function func($prev, $elem)
{
return $prev + $elem;
}
$res = array_reduce($arr, 'func', 0);
echo $res;
?>
Výsledok vykonania kódu:
15
Pozri tiež
-
funkciu
array_map,
ktorá aplikuje funkciu na prvky poľa -
funkciu
array_walk,
ktorá volá funkciu pre prvky poľa -
funkciu
array_filter,
ktorá filtruje pole -
funkciu
array_walk_recursive,
ktorá rekurzívne volá funkciu pre prvky poľa