Maison  >  Article  >  développement back-end  >  PHP compare deux tableaux pour l'égalité

PHP compare deux tableaux pour l'égalité

PHPz
PHPzoriginal
2023-04-25 09:05:39921parcourir

En PHP, il est courant de déterminer si deux tableaux sont égaux. Dans le développement réel, nous devrons peut-être déterminer si deux tableaux sont égaux afin de pouvoir les traiter en conséquence. PHP fournit une variété de méthodes pour comparer des tableaux, et cet article en présentera trois.

Méthode 1 : utilisez l'opérateur ==

En PHP, utilisez l'opérateur == pour comparer si deux tableaux sont égaux. Cet opérateur compare les clés et les valeurs de deux tableaux pour voir si elles sont exactement identiques. Si c'est le cas, il renvoie vrai, sinon il renvoie faux.

Voici un exemple de comparaison de tableaux à l'aide de l'opérateur == :

$arr1 = array('a' => 1, 'b' => 2, 'c' => 3);
$arr2 = array('a' => 1, 'b' => 2, 'c' => 3);
if ($arr1 == $arr2) {
   echo '两个数组相等';
} else {
   echo '两个数组不相等';
}

Dans l'exemple ci-dessus, les clés et les valeurs du tableau $arr1 et du tableau $arr2 sont exactement égales, donc le résultat est "les deux tableaux sont égaux ".

Il convient de noter que lors de l'utilisation de l'opérateur == pour déterminer l'égalité des tableaux, true ne sera renvoyé que si les clés et les valeurs des deux tableaux sont complètement égales. Si l’ordre de deux tableaux est différent, ils sont également considérés comme des tableaux inégaux.

Méthode 2 : utilisez l'opérateur ===

En PHP, utilisez l'opérateur === pour comparer si deux tableaux sont égaux. Cet opérateur compare les clés, l'ordre des valeurs et les types des deux tableaux et renvoie vrai s'ils sont identiques, sinon il renvoie faux.

Voici un exemple de comparaison de tableaux à l'aide de l'opérateur === :

$arr1 = array('a' => 1, 'b' => 2, 'c' => 3);
$arr2 = array('a' => 1, 'b' => 2, 'c' => 3);
if ($arr1 === $arr2) {
   echo '两个数组相等';
} else {
   echo '两个数组不相等';
}

Dans l'exemple ci-dessus, les clés, les valeurs, l'ordre et les types du tableau $arr1 et du tableau $arr2 sont exactement égaux, donc le résultat est "deux tableaux" égaux ".

Il convient de noter que lorsque vous utilisez l'opérateur === pour comparer des tableaux, vous devez non seulement déterminer si les clés et les valeurs sont égales, mais également si leurs types de données sont les mêmes. Par conséquent, il est recommandé d’utiliser l’opérateur === pour déterminer si deux tableaux sont égaux.

Méthode 3 : Utiliser la comparaison array_diff

En PHP, vous pouvez utiliser la fonction array_diff() pour comparer la différence entre deux tableaux. Cette fonction renvoie les différentes parties des deux tableaux, ou un tableau vide si les deux tableaux sont exactement égaux.

Voici un exemple de comparaison de tableaux à l'aide de la fonction array_diff() :

$arr1 = array('a' => 1, 'b' => 2, 'c' => 3);
$arr2 = array('a' => 1, 'b' => 2, 'c' => 3);
$diff = array_diff($arr1, $arr2);
if (empty($diff)) {
   echo '两个数组相等';
} else {
   echo '两个数组不相等';
}

Dans l'exemple ci-dessus, la fonction array_diff() est utilisée pour comparer le tableau $arr1 et le tableau $arr2, et s'ils sont égaux, un tableau vide est renvoyé . Par conséquent, lorsque vous jugez si deux tableaux sont égaux, jugez simplement si le tableau renvoyé est vide.

Il convient de noter que lors de l'utilisation de la fonction array_diff() pour comparer des tableaux, si les deux tableaux sont égaux, un tableau vide sera renvoyé. Cependant, si l’ordre des éléments de deux tableaux est différent, ils seront également considérés comme des tableaux inégaux.

En résumé, les opérateurs == et === et la fonction array_diff() peuvent être utilisés pour comparer si deux tableaux sont égaux. Dans le développement réel, il est recommandé d'utiliser l'opérateur === pour comparer si les tableaux sont égaux, car cet opérateur peut vérifier le type de données et éviter les problèmes causés par différents types de données.

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