Maison  >  Article  >  développement back-end  >  Comment savoir si une certaine valeur existe dans un tableau à deux dimensions en php

Comment savoir si une certaine valeur existe dans un tableau à deux dimensions en php

PHPz
PHPzoriginal
2023-04-20 13:55:001332parcourir

Tableau bidimensionnel PHP pour savoir si une certaine valeur existe

En PHP, le tableau est l'un des types de données couramment utilisés, et le tableau bidimensionnel est l'une des formes de tableau les plus couramment utilisées. Dans le développement réel, nous avons souvent besoin de déterminer si une certaine valeur existe dans un tableau à deux dimensions. Cet article présentera plusieurs méthodes d'implémentation.

  1. Utiliser la boucle foreach

Tout d'abord, nous pouvons utiliser la boucle foreach pour parcourir l'ensemble du tableau bidimensionnel et déterminer si la valeur cible existe une par une. Le code est le suivant :

function search_array($array, $search_value)
{
    foreach($array as $value)
    {
        if(in_array($search_value, $value))
        {
            return true;
        }
    }
    return false;
}

Dans le code ci-dessus, nous définissons une fonction nommée search_array, qui reçoit deux paramètres $array représente le tableau bidimensionnel à rechercher, et $search_value représente la valeur à rechercher.

Dans le corps de la fonction, nous utilisons d'abord la boucle foreach pour parcourir le tableau bidimensionnel, en retirant un élément du tableau $value à chaque fois, puis utilisons la fonction in_array pour vérifier si $search_value existe dans $value S'il existe. , la fonction renvoie true, indiquant que la recherche a été trouvée. Valeur cible ; sinon, continuez la boucle jusqu'à ce que le tableau soit parcouru.

Remarque : La fonction in_array() est utilisée pour rechercher une valeur donnée dans un tableau. Renvoie vrai s'il est trouvé, faux sinon.

  1. Utilisation de la fonction array_walk

En plus d'utiliser la boucle foreach, nous pouvons également utiliser la fonction array_walk pour traiter chaque élément du tableau et vérifier si la valeur cible existe. Le code est le suivant :

function search_array($array, $search_value)
{
    $found = false;
    array_walk($array, function($value) use (&$found, $search_value){
        if(in_array($search_value, $value))
        {
            $found = true;
        }
    });
    return $found;
}

Dans le code ci-dessus, nous définissons d'abord une fonction nommée search_array, qui reçoit deux paramètres : $array représente le tableau bidimensionnel à rechercher, et $search_value représente la valeur à rechercher. Nous définissons également une variable $found, qui indique si la valeur cible est trouvée et est initialisée à false.

Ensuite, nous avons appelé la fonction array_walk pour parcourir le tableau $array. Ici, nous avons utilisé une fonction anonyme comme fonction de rappel. Cette fonction reçoit le paramètre $value pour représenter l'élément du tableau. $search_value in. Dans le corps de la fonction, utilisez La fonction in_array vérifie si $search_value existe dans $value et, si c'est le cas, définit $found sur true, indiquant que la valeur cible est trouvée. Enfin, la fonction renvoie la valeur de $found, indiquant si la valeur cible a été trouvée.

Remarque : La fonction array_walk() applique une fonction définie par l'utilisateur à chaque élément du tableau. Renvoie VRAI en cas de succès, FAUX sinon.

  1. Utilisez la fonction array_reduce

Enfin, nous pouvons également utiliser la fonction array_reduce pour parcourir l'ensemble du tableau bidimensionnel et vérifier si chaque élément du tableau contient la valeur cible un par un. Le code est le suivant :

function search_array($array, $search_value)
{
    $found = array_reduce($array, function($carry, $value) use ($search_value){
        return $carry || in_array($search_value, $value);
    }, false);
    return $found;
}

Dans le code ci-dessus, nous définissons d'abord une fonction nommée search_array, qui reçoit deux paramètres : $array représente le tableau bidimensionnel à rechercher, et $search_value représente la valeur à rechercher.

Ensuite, nous utilisons la fonction array_reduce pour parcourir l'intégralité du tableau bidimensionnel, en utilisant une fonction anonyme comme fonction de rappel, où $carry représente la valeur de retour de l'itération précédente et $value représente l'élément du tableau actuellement itéré. La fonction in_array est utilisée dans le corps de la fonction pour vérifier si $search_value existe dans $value. Si elle existe, $carry || est renvoyé, indiquant que la valeur cible a été trouvée, sinon $carry false est renvoyé. indiquant que la valeur cible n’a pas été trouvée. Enfin, la fonction renvoie la valeur de $found, indiquant si la valeur cible a été trouvée.

Remarque : La fonction array_reduce() utilise une fonction de rappel pour réduire de manière itérative le tableau à une valeur unique.

Résumé

Cet article présente trois façons d'implémenter un tableau bidimensionnel PHP pour trouver une certaine valeur. Il utilise respectivement la boucle foreach, la fonction array_walk et la fonction array_reduce pour parcourir le tableau bidimensionnel afin de vérifier s'il contient la valeur cible. . Dans le développement réel, nous devons choisir une méthode de mise en œuvre appropriée en fonction de la situation réelle pour améliorer l'efficacité du code et la vitesse d'exécution.

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