array_reduce функциясы
array_reduce функциясы коллбэкди колдонуп,
массивди бир мааниге (редукциялайт) жыйнат.
Биринчи параметрде функция массивди кабыл алат, экинчисинде - ар бир массив элементине кезек-кезек колдонулуучу коллбэк.
Үчүнчү, милдеттүү эмес параметрде
массивди жыйноо баштала турган баштапкы маани болот.
Демейки бул параметрдин мааниси
null.
Функция-коллбэк эки маанини параметр катары алат. Биринчи маани мурунку итерациянын натыйжалуу маанисин камтыйт. Биринчи итерация учурunda ал үчүнчү параметрдин маанисин камтыйт.
Коллбэктин экинчи мааниси болсо массивдин учурдагы элементин камтыйт.
Коллбэк ар бир массив элементине кезек-кезек колдонулат. Коллбэк учурдагы итерацияда кайтарган нерсе, кийинки итерацияда коллбэктин биринчи параметрине түшөт.
Ошентип, коллбэк массивдин ар бир элементине кезек-кезек колдонулуп,
акырында бир маани пайда болот. Бул маани
array_reduce функциясынын иш натыйжасы болот.
Синтаксис
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
Мисал
Массив элементтеринин суммасын табалы:
<?php
$arr = [1, 2, 3, 4, 5];
function func($prev, $elem)
{
return $prev + $elem;
}
$res = array_reduce($arr, 'func', 0);
echo $res;
?>
Кодду иштетүү натыйжасы:
15
Дагы караңыз
-
array_mapфункциясын,
массив элементтерине функцияны колдонот -
array_walkфункциясын,
массив элементтери үчүн функцияны чакырат -
array_filterфункциясын,
массивди фильтрлейт -
array_walk_recursiveфункциясын,
массив элементтерине функцияны рекурсивдүү чакырат