array_filter

(PHP 4 >= 4.0.6, PHP 5)

array_filter — Filtre les éléments d'un tableau grâce à une fonction utilisateur

Description

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

Évalue chaque valeur du tableau input en les passant à la fonction utilisateur. Si la fonction utilisateur retourne TRUE , la valeur courante du tableau input est retourné dans le tableau résultant. Les clés du tableau sont préservées.

Liste de paramètres

input

Le tableau à évaluer

callback

La fonction utilisateur à utiliser

Si aucune fonction utilisateur n'est fournie, toutes les entrées du tableau input valant FALSE (voir la conversion en booléen ) seront effacées.

Valeurs de retour

Retourne le tableau filtré.

Exemples

Exemple 387. Exemple avec array_filter()

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

function 
even ( $var )
{
    return(!(
$var  1 ));
}

$array1  = array( "a" => 1 "b" => 2 "c" => 3 "d" => 4 "e" => 5 );
$array2  = array( 6 7 8 9 10 11 12 );

echo 
"Ancien :\n" ;
print_r ( array_filter ( $array1 "odd" ));
echo 
"Nouveau :\n" ;
print_r ( array_filter ( $array2 "even" ));
?>

L'exemple ci-dessus va afficher :

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

Exemple 388. Exemple avec array_filter() sans fonction utilisateur

<?php

$entry 
= array(
             
=>  'foo' ,
             
=>  false ,
             
=> - 1 ,
             
=>  null ,
             
=>  ''
          
);

print_r ( array_filter ( $entry ));
?>

L'exemple ci-dessus va afficher :


Array
(
    [0] => foo
    [2] => -1
)

    

Notes

Attention

Si le tableau est modifié depuis la fonction utilisateur (e.g. des éléments sont ajoutés, effacés ou réinitialisés), le comportement de cette fonction est indéfinie.

Voir aussi

array_map()
array_reduce()
array_walk()