Maison >développement back-end >tutoriel php >Comment puis-je filtrer un tableau PHP en fonction de la valeur à l'aide de « array_filter() » ?

Comment puis-je filtrer un tableau PHP en fonction de la valeur à l'aide de « array_filter() » ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-17 21:38:15668parcourir

How Can I Filter a PHP Array Based on Value Using `array_filter()`?

Filtrer les tableaux en fonction de conditions en PHP

Lorsque vous travaillez avec des tableaux en PHP, il devient souvent nécessaire de filtrer les éléments en fonction de conditions spécifiques . Par exemple, vous souhaiterez peut-être supprimer des éléments dont la valeur ne répond pas à un certain critère.

Filtrer un tableau par une valeur

Considérons un tableau comme celui-ci :

array("a" => 2, "b" => 4, "c" => 2, "d" => 5, "e" => 6, "f" => 2)

Supposons que nous souhaitions filtrer ce tableau pour ne conserver que les éléments dont la valeur est égale à 2. Nous voulons que le résultat conserve l'original clés :

array("a" => 2, "c" => 2, "f" => 2)

Pour y parvenir, PHP fournit une fonction intégrée appelée array_filter(). Cette fonction prend deux paramètres :

  • $array : Le tableau à filtrer.
  • $callback : Une fonction de rappel qui détermine quels éléments conserver.

Créer un rappel Fonction

Pour notre cas, nous avons besoin d'une fonction de rappel qui renvoie vrai pour les éléments ayant une valeur de 2 et faux sinon. Nous pouvons définir cette fonction comme suit :

function filterArray($value){
    return ($value == 2);
}

Application du filtre

Maintenant, nous pouvons utiliser array_filter() avec notre fonction de rappel pour filtrer le tableau :

$filteredArray = array_filter($fullArray, 'filterArray');

Le résultat est stocké dans $filteredArray, qui contient la sortie souhaitée :

array("a" => 2, "c" => 2, "f" => 2)

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