Comment comparer deux tableaux d'index en php

WBOY
Libérer: 2023-05-22 22:37:37
original
477 Les gens l'ont consulté

En PHP, nous devons parfois comparer deux tableaux d'index, par exemple vérifier si deux tableaux ont la même valeur ou clé, ou comparer si leurs éléments sont exactement les mêmes. Alors, en PHP, comment comparer deux tableaux d’index ?

Méthode 1 : Utilisez la fonction array_diff() pour comparer les ensembles de différences

La fonction array_diff() peut être utilisée pour comparer l'ensemble de différences de deux tableaux ou plus, et elle renverra Une valeur qui existe dans le premier tableau mais qui n'existe dans aucun autre tableau.

Par exemple, le code suivant peut comparer deux tableaux $a et $b et renvoyer la différence entre eux :

$a = array("apple", "banana", "orange");
$b = array("apple", "pear", "grape");

$diff = array_diff($a, $b);
print_r($diff);
Copier après la connexion

Le résultat de sortie est :

Array ( [1] => banana [2] => orange )
Copier après la connexion
# 🎜🎜#Nous pouvons voir que le résultat $diff contient des valeurs qui existent dans le tableau $a mais n'existent pas dans le tableau $b (c'est-à-dire "banane" et "orange").

Si nous devons comparer l'intersection ou l'union de deux tableaux, nous pouvons également utiliser les fonctions array_intersect() et array_merge() pour y parvenir.

Méthode 2 : Utilisez une boucle pour comparer un par un

Une autre façon de comparer deux tableaux d'index consiste à utiliser une boucle pour comparer leurs éléments un par un. Nous pouvons utiliser une boucle for ou une boucle foreach pour parcourir le tableau et comparer leurs valeurs ou paires clé-valeur une par une pour voir si elles sont égales.

Le code suivant montre comment utiliser une boucle foreach pour parcourir deux tableaux $a et $b et comparer si leurs valeurs sont égales :

$a = array("apple", "banana", "orange");
$b = array("apple", "pear", "grape");

$result = true;
foreach ($a as $key => $value) {
    if (!isset($b[$key]) || $b[$key] != $value) {
        $result = false;
        break;
    }
}

if ($result) {
    echo "两个数组的元素完全相同!";
} else {
    echo "两个数组的元素不完全相同!";
}
Copier après la connexion

Le résultat de sortie est : #🎜🎜 #
两个数组的元素不完全相同!
Copier après la connexion

Dans le code ci-dessus, nous utilisons une boucle foreach pour parcourir le tableau $a, et utilisons la fonction isset() pour vérifier si la même clé que le tableau $a existe dans le $b tableau. S'il n'existe pas, cela signifie que les éléments des tableaux $a et $b ne sont pas exactement les mêmes.

En même temps, nous comparons également les éléments avec la même clé dans les tableaux $a et $b un par un pour voir s'ils sont égaux. S’ils ne sont pas égaux, leurs éléments sont également différents.

Il convient de noter que les deux méthodes ci-dessus conviennent pour comparer deux tableaux d'index. Si vous devez comparer deux tableaux associatifs, vous pouvez utiliser la fonction array_diff_assoc() ou parcourir manuellement pour les comparer un par un.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal