Fungsi array_reduce
Fungsi array_reduce mereduksi
array menjadi satu nilai menggunakan callback.
Pada parameter pertama fungsi menerima array, pada parameter kedua - callback yang akan secara berurutan diterapkan ke setiap elemen array.
Pada parameter ketiga yang opsional
terdapat nilai awal, dari mana
reduksi array akan dimulai.
Secara default parameter ini memiliki
nilai null.
Fungsi callback menerima parameter dua nilai. Nilai pertama berisi hasil nilai dari iterasi sebelumnya. Pada iterasi pertama berisi nilai parameter ketiga.
Dan nilai kedua dari callback berisi elemen array saat ini.
Callback akan secara berurutan diterapkan ke setiap elemen array. Nilai yang dikembalikan pada iterasi saat ini oleh callback, akan masuk ke parameter pertama callback pada iterasi berikutnya.
Dengan demikian, callback secara berurutan
akan diterapkan ke setiap elemen array
secara bergiliran dan pada akhirnya akan dihasilkan
sebuah nilai. Nilai inilah yang menjadi hasil
dari fungsi array_reduce.
Sintaks
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
Contoh
Mari kita cari jumlah total elemen array:
<?php
$arr = [1, 2, 3, 4, 5];
function func($prev, $elem)
{
return $prev + $elem;
}
$res = array_reduce($arr, 'func', 0);
echo $res;
?>
Hasil eksekusi kode:
15
Lihat juga
-
fungsi
array_map,
yang menerapkan fungsi ke elemen array -
fungsi
array_walk,
yang memanggil fungsi untuk elemen array -
fungsi
array_filter,
yang menyaring array -
fungsi
array_walk_recursive,
yang secara rekursif memanggil fungsi untuk elemen array