Fonctions sur les tableaux
PHP Manual

array_filter

(PHP 4 >= 4.0.6, PHP 5)

array_filterFiltre 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 #1 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(6789101112);

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 #2 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


Fonctions sur les tableaux
PHP Manual