Maison >développement back-end >Problème PHP >Comment déterminer si une paire clé-valeur existe dans un autre tableau en php

Comment déterminer si une paire clé-valeur existe dans un autre tableau en php

PHPz
PHPzoriginal
2023-04-12 15:06:31979parcourir

En programmation PHP, nous utilisons généralement des tableaux pour stocker et exploiter des données complexes. Parfois, nous devons déterminer si un autre tableau existe dans un tableau. Pour le moment, nous pouvons utiliser certaines méthodes fournies par PHP pour y parvenir.

1. Utilisez la fonction in_array() pour déterminer si une valeur existe

in_array() est une fonction en PHP utilisée pour déterminer si une valeur existe dans un tableau. Cette fonction accepte deux paramètres : la valeur à trouver et le tableau à rechercher. Renvoie VRAI si la valeur est trouvée, FAUX sinon.

L'exemple de code est le suivant :

$array1 = array("apple", "banana", "orange");
$array2 = array("orange", "grape", "pear");

foreach ($array1 as $value) {
    if (in_array($value, $array2)) {
        echo "{$value} exists in array2\n";
    } else {
        echo "{$value} does not exist in array2\n";
    }
}

Dans l'exemple de code ci-dessus, nous définissons d'abord deux tableaux $array1 et $array2. Ensuite, dans une boucle foreach, parcourez les éléments du tableau $array1 un par un et utilisez la fonction in_array() pour déterminer si l'élément existe dans le tableau $array2. S'il existe, "{element} existe dans le tableau2" est affiché à l'écran, sinon "{element} n'existe pas dans le tableau2" est affiché.

2. Utilisez la fonction array_diff_assoc() pour comparer les paires clé-valeur

Si nous devons comparer si deux tableaux sont complètement égaux, nous devons comparer non seulement les valeurs, mais également les paires clé-valeur. À ce stade, vous pouvez utiliser la fonction array_diff_assoc() à des fins de comparaison. Cette fonction renvoie les paires clé-valeur qui existent dans le premier tableau mais n'existent pas dans les autres tableaux.

L'exemple de code est le suivant :

$array1 = array("a" => "apple", "b" => "banana", "c" => "orange");
$array2 = array("d" => "orange", "e" => "grape", "f" => "pear");

$diff = array_diff_assoc($array1, $array2);

print_r($diff);

Dans l'exemple de code ci-dessus, nous définissons deux tableaux associatifs $array1 et $array2. Utilisez ensuite la fonction array_diff_assoc() pour comparer les paires clé-valeur des tableaux $array1 et $array2 afin d'obtenir différentes paires clé-valeur $diff. Enfin, utilisez la fonction print_r() pour afficher le contenu du tableau $diff.

3. Utilisez la fonction array_intersect_assoc() pour comparer les paires clé-valeur

Si nous devons comparer deux tableaux pour voir s'ils ont la même paire clé-valeur, nous pouvons utiliser la fonction array_intersect_assoc(). Cette fonction renverra les mêmes paires clé-valeur dans les deux tableaux.

L'exemple de code est le suivant :

$array1 = array("a" => "apple", "b" => "banana", "c" => "orange");
$array2 = array("d" => "orange", "e" => "grape", "f" => "pear", "a" => "orange");

$intersect = array_intersect_assoc($array1, $array2);

print_r($intersect);

Dans l'exemple de code ci-dessus, nous définissons deux tableaux associatifs $array1 et $array2. Utilisez ensuite la fonction array_intersect_assoc() pour comparer les paires clé-valeur des tableaux $array1 et $array2 afin d'obtenir la même paire clé-valeur $intersect. Enfin, utilisez la fonction print_r() pour afficher le contenu du tableau $intersect.

Résumé

Ce qui précède présente la méthode pour déterminer si un tableau existe dans un autre tableau en PHP : utilisez la fonction in_array() pour déterminer si la valeur existe ; utilisez la fonction array_diff_assoc() pour comparer les paires clé-valeur ; Fonction array_intersect_assoc() pour comparer la paire de valeurs de clés. Grâce à ces méthodes, nous pouvons rapidement trouver et comparer diverses données dans des tableaux en programmation PHP.

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