array_filter
(PHP 4 >= 4.0.6)
array_filter --
Filtra elementos de una matriz mediante una función "callback"
Description
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.
Ejemplo 1. Ejemplo de array_filter() <?php
function impar($var) {
return ($var % 2 == 1);
}
function par($var) {
return ($var % 2 == 0);
}
$array1 = array ("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
$array2 = array (6, 7, 8, 9, 10, 11, 12);
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 array_walk().