Forum und email

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

Example#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
)

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

Caution

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.