184 of 410 menu

Función array_reduce

La función array_reduce reduce un array a un único valor utilizando una función de retrollamada.

En el primer parámetro la función toma un array, en el segundo - una función de retrollamada que se aplicará secuencialmente a cada elemento del array.

En el tercer parámetro opcional estará el valor inicial desde el cual comenzará la reducción del array. Por defecto este parámetro tiene el valor null.

La función de retrollamada recibe como parámetros dos valores. El primer valor contiene el valor resultante de la iteración anterior. En el caso de la primera iteración contiene el valor del tercer parámetro.

Y el segundo valor de la retrollamada contiene el elemento actual del array.

La retrollamada se aplicará secuencialmente a cada elemento del array. Lo que devuelva la retrollamada en la iteración actual, pasará al primer parámetro de la retrollamada en la siguiente iteración.

De este modo, la retrollamada secuencialmente se aplicará a cada elemento del array uno por uno y al final se obtendrá un valor. Este valor será el resultado del trabajo de la función array_reduce.

Sintaxis

array_reduce(array $array, callable $callback, mixed $initial = null): mixed

Ejemplo

Encontremos la suma de los elementos del array:

<?php $arr = [1, 2, 3, 4, 5]; function func($prev, $elem) { return $prev + $elem; } $res = array_reduce($arr, 'func', 0); echo $res; ?>

Resultado de la ejecución del código:

15

Véase también

  • la función array_map,
    que aplica una función a los elementos de un array
  • la función array_walk,
    que llama a una función para los elementos de un array
  • la función array_filter,
    que filtra un array
  • la función array_walk_recursive,
    que llama recursivamente a una función para los elementos de un array
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar