Maison  >  Article  >  développement back-end  >  Filtrer les tableaux à l'aide de PHP array_filter()

Filtrer les tableaux à l'aide de PHP array_filter()

WBOY
WBOYoriginal
2023-06-27 11:37:171589parcourir

En PHP, la fonction array_filter() peut nous aider à filtrer rapidement les éléments d'un tableau. Cet article présentera l'utilisation de cette fonction et des exemples associés. La syntaxe de base de la fonction

array_filter() est :

array_filter(array $array [, callable $callback [, int $flag ]])

où le paramètre $array est le tableau à filtrer, le paramètre $callback est une fonction de rappel facultative et le paramètre $flag est un indicateur facultatif utilisé pour déterminer comment gérer la valeur de retour de la fonction de rappel.

Expliquons ces paramètres un par un :

  1. $array : Le tableau à filtrer doit être de type tableau.
  2. $callback : Fonction de rappel facultative. S’ils ne sont pas spécifiés, les éléments avec une valeur false seront automatiquement filtrés. Le format de la fonction de rappel est fonction ($value), où $value est la valeur de l'élément du tableau. Si la fonction de rappel renvoie vrai, l'élément est conservé, sinon l'élément est supprimé.
  3. $flag : utilisé pour spécifier comment gérer la valeur de retour de la fonction de rappel. Par défaut, la fonction array_filter() ignore les éléments dont la valeur de retour est false, null ou une chaîne vide. Si le paramètre $flag est spécifié comme ARRAY_FILTER_USE_BOTH, le nom de la clé sera transmis à la fonction de rappel.

Jetons un coup d'œil à quelques exemples :

  1. Filtrez les valeurs vides et les fausses valeurs​​dans le tableau :
$array = array('foo', false, -1, null, '', 0);

$result = array_filter($array);

print_r($result);

Résultats de sortie :

Array
(
    [0] => foo
    [2] => -1
)
  1. Filtrez les nombres inférieurs à 10 dans le tableau :
$array = array(1, 20, 3, 40, 5, 60, 7, 80, 9);

$result = array_filter($array, function($value) {
    return $value > 10;
});

print_r($result);

Résultat de sortie :

Array
(
    [1] => 20
    [3] => 40
    [5] => 60
    [7] => 80
)
  1. Filtrer tous les nombres impairs dans le tableau :
$array = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

$result = array_filter($array, function($value) {
    return $value % 2 == 0;
});

print_r($result);

Résultat de sortie :

Array
(
    [1] => 2
    [3] => 4
    [5] => 6
    [7] => 8
    [9] => 10
)
  1. Conserver les éléments avec des noms de clé pairs dans le tableau :
$array = array(0 => 'foo', 1 => 'bar', 2 => 'baz', 3 => 'qux');

$result = array_filter($array, function($value, $key) {
    return $key % 2 == 0;
}, ARRAY_FILTER_USE_BOTH);

print_r($result);

Résultat de sortie :

Array
(
    [0] => foo
    [2] => baz
)

Pour résumer, la fonction array_filter() est une fonction très pratique qui peut nous aider à filtrer rapidement les éléments d'un tableau et à réduire la complexité du code et la charge de travail. Nous pouvons librement utiliser les fonctions de rappel pour implémenter diverses fonctions de filtrage en fonction de nos propres besoins.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn