183 of 410 menu

Función array_filter

La función array_filter filtra un array usando una función dada. Los elementos del array se pasarán secuencialmente como parámetro a la función y, si para ese elemento la función devuelve true - el elemento permanecerá en el array, y si false - será eliminado. En el array solo permanecerán aquellos elementos para los que la función devuelva true.

Si el array original es asociativo, se conservarán sus claves.

Sintaxis

array_filter(array $array, ?callable $callback = null, int $mode = 0): array

Ejemplo

Dejemos en el array solo los elementos positivos:

<?php function func($num) { if ($num >= 0) { return true; } else { return false; } } $arr = [1, -1, 2, -2, 3, -3]; $res = array_filter($arr, 'func'); var_dump($res); ?>

Resultado de ejecutar el código:

[1, 2, 3]

Ejemplo

Acortemos la condición:

<?php function func($num) { return $num >= 0; } $arr = [1, -1, 2, -2, 3, -3]; $res = array_filter($arr, 'func'); var_dump($res); ?>

Resultado de ejecutar el código:

[1, 2, 3]

Ejemplo

Convirtamos a función anónima:

<?php $arr = [1, -1, 2, -2, 3, -3]; $res = array_filter($arr, function($num) { return $num >= 0; }); var_dump($res); ?>

Resultado de ejecutar el código:

[1, 2, 3]

Ejemplo

Convirtamos a función flecha:

<?php $arr = [1, -1, 2, -2, 3, -3]; $res = array_filter($arr, fn($num) => $num >= 0); var_dump($res); ?>

Resultado de ejecutar el código:

[1, 2, 3]

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_walk_recursive,
    que llama recursivamente a una función para los elementos de un array
  • la función array_reduce,
    que reduce 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