Forum und email

array_filter

(PHP 4 >= 4.0.6, PHP 5)

array_filter — Filtra elementos de una matriz mediante una función "callback"

Descripción

array array_filter ( array $input [, callback $function ] )

array_filter() repasa cada valor en la matriz input y lo pasa a la función callback . Si la función callback devuelve verdadero, el valor es devuelto a la matriz resultado. Los índices de la matriz se mantienen.

Example#1 Ejemplo de array_filter()

<?php
function impar($var) {
    return (
$var == 1);
}

function 
par($var) {
    return (
$var == 0);
}

$array1 = array ("a"=>1"b"=>2"c"=>3"d"=>4"e"=>5);
$array2 = array (6789101112);

echo 
"Impares :\n";
print_r(array_filter($array1"impar"));
echo 
"Pares:\n";
print_r(array_filter($array2"par"));
?>

La salida en pantalla del programa anterior será:

Impares :
Array
(
    [a] => 1
    [c] => 3
    [e] => 5
)
Pares:
Array
(
    [0] => 6
    [2] => 8
    [4] => 10
    [6] => 12
)

No se debe modificar la matriz a la que array_filter() se aplica desde la función "callback", como p. ej. añadir o eliminar un elemento, o realizar un "unset()". Si la matriz es modificada el comportamiento de esta función no está definido.

Ver también array_map(), array_reduce(), y Ver también array_map(), array_reduce(), y array_walk().