Maison  >  Article  >  développement back-end  >  Comment filtrer et filtrer les éléments dans les tableaux PHP

Comment filtrer et filtrer les éléments dans les tableaux PHP

WBOY
WBOYoriginal
2023-09-05 12:12:221136parcourir

PHP 数组如何过滤和筛选元素

Comment filtrer et filtrer des éléments dans des tableaux PHP

En PHP, les tableaux sont une structure de données très couramment utilisée, et nous avons souvent besoin de filtrer et de filtrer des éléments de tableaux. Cet article présentera plusieurs méthodes et fonctions couramment utilisées pour filtrer et filtrer les éléments des tableaux PHP.

  1. Utilisez la fonction array_filter() pour filtrer

La fonction array_filter() est une fonction intégrée à PHP qui est utilisée pour filtrer les éléments d'un tableau. Il accepte un tableau en entrée et renvoie un tableau filtré de résultats. Nous pouvons décider de conserver ou non les éléments du tableau en passant une fonction de rappel personnalisée.

Ce qui suit est un exemple de code :

$numbers = array(1, 2, 3, 4, 5, 6);

// 过滤掉所有奇数
$filtered_numbers = array_filter($numbers, function ($number) {
    return $number % 2 == 0;
});

print_r($filtered_numbers);

Le résultat de sortie est :

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

Dans l'exemple ci-dessus, nous utilisons une fonction anonyme comme fonction de rappel pour déterminer si un nombre est pair. En appelant la fonction array_filter(), nous filtrerons tous les nombres impairs et ne conserverons que les nombres pairs.

  1. Utilisez la fonction array_map() pour le filtrage

La fonction array_map() est une autre fonction de tableau couramment utilisée, qui peut appliquer une fonction de rappel à chaque élément du tableau et renvoyer un nouveau tableau. En définissant des conditions de filtre dans la fonction de rappel, nous pouvons facilement filtrer les éléments dont nous avons besoin.

Ce qui suit est un exemple de code :

$names = array("Alice", "Bob", "Charlie", "David");

// 筛选出名字长度大于等于5的人
$filtered_names = array_filter($names, function ($name) {
    return strlen($name) >= 5;
});

print_r($filtered_names);

Le résultat de sortie est :

Array
(
    [2] => Charlie
    [3] => David
)

Dans l'exemple ci-dessus, nous utilisons la fonction strlen() pour obtenir la longueur du nom et déterminer si la longueur est supérieure ou égale à 5 dans la fonction de rappel. En appelant la fonction array_filter(), nous filtrons les personnes dont les noms sont supérieurs ou égaux à 5.

  1. Utilisez la boucle foreach pour filtrer et filtrer

En plus d'utiliser les fonctions intégrées, nous pouvons également utiliser la boucle foreach pour filtrer et filtrer manuellement les éléments du tableau. Cette approche est plus flexible et peut être personnalisée en fonction de vos besoins.

Ce qui suit est un exemple de code :

$ages = array(21, 18, 25, 16, 30);

// 过滤掉所有未成年人(年龄小于 18 岁)
$filtered_ages = array();
foreach ($ages as $age) {
    if ($age >= 18) {
        $filtered_ages[] = $age;
    }
}

print_r($filtered_ages);

Le résultat de sortie est :

Array
(
    [0] => 21
    [1] => 18
    [2] => 25
    [4] => 30
)

Dans l'exemple ci-dessus, nous utilisons une boucle foreach pour parcourir le tableau et utilisons une instruction if dans la boucle pour déterminer si l'âge est supérieur âgé de 18 ans ou plus. Si la condition est remplie, l'élément est ajouté au nouveau tableau. Enfin, nous imprimons le tableau filtré.

Résumé :

Cet article présente plusieurs méthodes et fonctions couramment utilisées pour filtrer et filtrer les éléments des tableaux PHP. Que vous utilisiez les fonctions intégrées array_filter() et array_map(), ou que vous filtrez manuellement à l'aide d'une boucle foreach, vous pouvez choisir en fonction de vos besoins spécifiques. En maîtrisant ces méthodes, nous pouvons exploiter les tableaux PHP de manière plus flexible et améliorer la lisibilité et la maintenabilité du code.

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