Funksie array_reduce
Die funksie array_reduce vou 'n skikking op (reduseer dit)
tot 'n enkele waarde deur 'n terugroepfunksie te gebruik.
In die eerste parameter aanvaar die funksie 'n skikking, in die tweede - 'n terugroepfunksie wat een vir een op elke element van die skikking toegepas sal word.
In die derde, opsionele parameter
word die aanvanklike waarde geplaas, waarmee
die opvou van die skikking sal begin.
Standaard het hierdie parameter die
waarde null.
Die terugroepfunksie ontvang twee waardes as parameters. Die eerste waarde bevat die resultaatwaarde van die vorige iterasie. In die geval van die eerste iterasie bevat dit die waarde van die derde parameter.
En die tweede waarde van die terugroepfunksie bevat die huidige element van die skikking.
Die terugroepfunksie sal een vir een toegepas word op elke element van die skikking. Die waarde wat die terugroepfunksie by die huidige iterasie teruggee, beland in die eerste parameter van die terugroepfunksie by die volgende iterasie.
So word die terugroepfunksie opeenvolgend
op elke element van die skikking
toegepas en uiteindelik ontstaan 'n
waarde. Hierdie waarde is die resultaat
van die funksie array_reduce se werk.
Sintaksis
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
Voorbeeld
Laat ons die som van die skikking se elemente vind:
<?php
$arr = [1, 2, 3, 4, 5];
function func($prev, $elem)
{
return $prev + $elem;
}
$res = array_reduce($arr, 'func', 0);
echo $res;
?>
Resultaat van die kode se uitvoering:
15
Sien ook
-
funksie
array_map,
wat 'n funksie op die elemente van 'n skikking toepas -
funksie
array_walk,
wat 'n funksie vir die elemente van 'n skikking aanroep -
funksie
array_filter,
wat 'n skikking filtreer -
funksie
array_walk_recursive,
wat 'n funksie rekursief vir die elemente van 'n skikking aanroep