La función Ds \ Vector :: reduce () puede reducir el vector a un solo valor usando la función de devolución de llamada.
Sintaxis
public mixed Ds\Vector::reduce( callable $callback [, mixed $initial ] )
La función Ds \ Vector :: reduce () puede devolver el valor de la devolución de llamada final.
Ejemplo 1
<?php
$vector = new \Ds\Vector([1, 2, 3, 4, 5]);
echo("The original vector elements: \n");
print_r($vector);
echo("\n The element after performing operation: \n");
var_dump($vector->reduce(function($carry, $element) {
return $carry + $element + 2;
}));
?>
Ejemplo 2
<?php
$vector = new \Ds\Vector([10, 20, 30, 40, 50]);
echo("The original vector elements: \n");
print_r($vector);
$func = function($carry, $element) {
return $carry * $element;
};
echo("\n The vector after reducing to single element: \n");
var_dump($vect->reduce($func, 10));
?>