Fungsi array_reduce
Fungsi array_reduce mengurangkan
array kepada satu nilai menggunakan callback.
Pada parameter pertama fungsi menerima array, pada parameter kedua - callback yang akan digunakan secara bergilir-gilir pada setiap elemen array.
Pada parameter ketiga yang tidak wajib
terdapat nilai awal, di mana
pengurangan array akan bermula.
Secara lalai parameter ini mempunyai
nilai null.
Fungsi-callback menerima parameter dua nilai. Nilai pertama mengandungi nilai hasil dari lelaran sebelumnya. Dalam kes lelaran pertama mengandungi nilai parameter ketiga.
Dan nilai kedua callback mengandungi elemen semasa array.
Callback akan digunakan secara bergilir-gilir pada setiap elemen array. Apa yang dikembalikan pada lelaran semasa oleh callback, akan masuk ke parameter pertama callback pada lelaran seterusnya.
Dengan demikian, callback secara berurutan
akan digunakan pada setiap elemen array
secara bergilir-gilir dan akhirnya akan terhasil
sesuatu nilai. Nilai inilah yang akan menjadi hasil
tugas fungsi array_reduce.
Sintaks
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
Contoh
Mari cari jumlah elemen array:
<?php
$arr = [1, 2, 3, 4, 5];
function func($prev, $elem)
{
return $prev + $elem;
}
$res = array_reduce($arr, 'func', 0);
echo $res;
?>
Keputusan pelaksanaan kod:
15
Lihat juga
-
fungsi
array_map,
yang menggunakan fungsi pada elemen array -
fungsi
array_walk,
yang memanggil fungsi untuk elemen array -
fungsi
array_filter,
yang menapis array -
fungsi
array_walk_recursive,
yang secara rekursif memanggil fungsi untuk elemen array