PHP - Función Ds Map reduce ()

La función Ds \ Map :: reduce () puede reducir el mapa a un solo valor usando una función de devolución de llamada.

Sintaxis

public mixed Ds\Map::reduce( callable $callback [, mixed $initial ] )

La función Ds \ Map :: reduce () puede devolver un valor de devolución de llamada final.

Ejemplo 1

<?php  
   $map = new \Ds\Map(["a" => 1, "b" => 2, "c" => 3]);  
   
   echo("The map elements: \n");  
   print_r($map);  
   
   echo("\n An element after performing operation: \n");  
  
   var_dump($map->reduce(function($carry, $key, $element) {  
      return $carry + $element + 2;  
   }));  
?>

Ejemplo 2

<?php  
   $map = new \Ds\Map(["a" => 10, "b" => 20, "c" => 30, "d" => 40]);  
   
   echo("The original map elements: \n");  
   print_r($map);  
   
   $func = function($carry, $key, $element) {  
      return $carry * $element;  
   };  
   echo("\n The map after reducing to single element: \n");  
   var_dump($map->reduce($func, 10));  
?>