array_reduce funksiyası
array_reduce funksiyasi massivi bir deyerə
endirir (reduksiya edir), callback istifadə edərək.
Birinci parametrdə funksiya massivi qəbul edir, ikincidə isə hər bir massiv elementinə növbə ilə tətbiq ediləcək callback funksiyası olur.
Üçüncü isteğe bağlı parametrdə massivin reduksiyasının
başlayacağı ilkin deyer olur.
Bu parametr standart olaraq null deyerinə malikdir.
Callback funksiyası iki deyeri parametr kimi alır. Birinci deyer əvvəlki iterasiyanın nəticə deyerini ehtiva edir. Birinci iterasiyada isə üçüncü parametrin deyerini ehtiva edir.
Callback-in ikinci deyeri isə cari massiv elementini ehtiva edir.
Callback hər bir massiv elementinə növbə ilə tətbiq ediləcək. Callback-in cari iterasiyada qaytardığı deyer, sonrakı iterasiyada callback-in birinci parametrinə düşəcək.
Beləliklə, callback ardıcıl olaraq hər bir massiv elementinə
növbə ilə tətbiq ediləcək və nəticədə müəyyən bir deyer alınacaq.
Bu deyer array_reduce funksiyasının işinin nəticəsi olacaq.
Sintaksis
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
Nümunə
Gəlin massiv elementlərinin cəmini tapaq:
<?php
$arr = [1, 2, 3, 4, 5];
function func($prev, $elem)
{
return $prev + $elem;
}
$res = array_reduce($arr, 'func', 0);
echo $res;
?>
Kodun icrasının nəticəsi:
15
Həmçinin baxın
-
array_mapfunksiyası,
massiv elementlərinə funksiya tətbiq edir -
array_walkfunksiyası,
massiv elementləri üçün funksiya çağırır -
array_filterfunksiyası,
massivi filtrləyir -
array_walk_recursivefunksiyası,
massiv elementləri üçün funksiyani rekursiv şəkildə çağırır