Maison >développement back-end >tutoriel php >Introduction aux fonctions PHP — array_filter() : utiliser des fonctions de rappel pour filtrer les éléments d'un tableau

Introduction aux fonctions PHP — array_filter() : utiliser des fonctions de rappel pour filtrer les éléments d'un tableau

WBOY
WBOYoriginal
2023-07-24 20:40:58937parcourir

Introduction aux fonctions PHP—array_filter() : utilisez des fonctions de rappel pour filtrer les éléments d'un tableau

Dans la programmation PHP, les tableaux sont un type de données très courant et important. En ce qui concerne les opérations sur les tableaux, l’une des opérations les plus courantes consiste à filtrer les éléments du tableau. PHP fournit une fonction array_filter() très pratique pour réaliser cette fonction. La fonction de

array_filter() est d'utiliser la fonction de rappel pour filtrer le tableau, conserver les éléments du tableau qui remplissent les conditions et renvoyer un nouveau tableau. La fonction

array_filter() s'utilise comme suit :

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

Description du paramètre :

  • $array : le tableau à filtrer
  • $callback : fonction de rappel, utilisée pour tester les éléments du tableau. Cette fonction accepte un paramètre qui représente l'élément dans le tableau et renvoie une valeur booléenne dans la fonction de rappel. Si elle renvoie vrai, l'élément sera conservé, et s'il renvoie faux, l'élément sera filtré. Si la fonction de rappel n'est pas fournie, les éléments avec une valeur false sont filtrés par défaut ;
  • $flag : paramètre facultatif, qui précise le nombre de paramètres passés dans la fonction de rappel. La valeur par défaut est 0, ce qui signifie que la fonction de rappel n'accepte qu'un seul paramètre (un élément du tableau). Si une valeur supérieure à 1 est passée, la fonction de rappel accepte deux paramètres, le premier paramètre est l'élément du tableau et le deuxième paramètre est la clé de l'élément.

Ci-dessous, nous utilisons plusieurs exemples pour démontrer l'utilisation de la fonction array_filter().

Exemple 1 : Filtrer les nombres pairs dans le tableau

<?php
// 原始数组
$arr = [1, 2, 3, 4, 5, 6];

// 过滤函数
function filter_even($value) {
    return ($value % 2 == 0);
}

// 使用array_filter()函数
$new_arr = array_filter($arr, 'filter_even');

// 输出结果
print_r($new_arr);
?>

Exécutez le code ci-dessus, le résultat de sortie est :

Array
(
    [1] => 2
    [3] => 4
    [5] => 6
)

Exemple 2 : Filtrez les valeurs nulles dans le tableau associatif

<?php
// 原始数组
$arr = ['name' => 'Tom', 'age' => '', 'gender' => 'male', 'email' => ''];

// 过滤函数
function filter_empty($value) {
    return ($value !== '');
}

// 使用array_filter()函数
$new_arr = array_filter($arr, 'filter_empty');

// 输出结果
print_r($new_arr);
?>

Exécutez le code ci-dessus, la sortie le résultat est :

Array
(
    [name] => Tom
    [gender] => male
)

Les deux ci-dessus. Chaque exemple montre deux cas d'utilisation de la fonction array_filter() pour filtrer les éléments d'un tableau. Dans le développement actuel, la fonction array_filter() propose de nombreux autres scénarios d'application, que nous pouvons utiliser de manière flexible en fonction des besoins réels.

Résumé : La fonction
array_filter() est une fonction très couramment utilisée et pratique en PHP. Elle fournit un moyen pratique de filtrer les éléments d'un tableau. En utilisant des fonctions de rappel pour déterminer si les éléments du tableau remplissent les conditions, nous pouvons implémenter diverses exigences de filtrage flexibles. J'espère que l'introduction de cet article pourra aider tout le monde et donner à chacun une compréhension plus approfondie de l'utilisation de la fonction array_filter().

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