Ds\Sequence::reduce
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
Ds\Sequence::reduce
Референца за `ds-sequence.reduce.php` со подобрена типографија и навигација.
Ds\Sequence::reduce
Класата Vector
Ds\Sequence::reduce — Ја сведува секвенцата на една вредност користејќи функција за враќање.
= NULL
Ја сведува секвенцата на една вредност користејќи функција за враќање.
Параметри
callback-
carry-
Вредноста на враќање од претходната функција за враќање, или
initialако е прва итерација. value-
Вредноста на тековната итерација.
initial-
Почетната вредност на вредноста за носење. Може да биде
null.
Вратени вредности
Вредноста на враќање од последната функција за враќање.
Примери
Пример #1 Ds\Sequence::reduce() пример со почетна вредност
<?php
$sequence = new \Ds\Vector([1, 2, 3]);
$callback = function($carry, $value) {
return $carry * $value;
};
var_dump($sequence->reduce($callback, 5));
// Iterations:
//
// $carry = $initial = 5
//
// $carry = $carry * 1 = 5
// $carry = $carry * 2 = 10
// $carry = $carry * 3 = 30
?>Горниот пример ќе прикаже нешто слично на:
int(30)
Пример #2 Ds\Sequence::reduce() пример без почетна вредност
<?php
$sequence = new \Ds\Vector([1, 2, 3]);
var_dump($sequence->reduce(function($carry, $value) {
return $carry + $value + 5;
}));
// Iterations:
//
// $carry = $initial = null
//
// $carry = $carry + 1 + 5 = 6
// $carry = $carry + 2 + 5 = 13
// $carry = $carry + 3 + 5 = 21
?>Горниот пример ќе прикаже нешто слично на:
int(21)