Maison > Article > programmation quotidienne > Comment comparer deux tableaux multidimensionnels PHP
Déterminez si deux tableaux multidimensionnels sont égaux ou quels éléments sont différents. Nous pouvons réaliser une comparaison via la fonction array_udiff(), la méthode create_function(), strcmp() et d'autres fonctions en PHP.
Ci-dessous, nous présenterons la méthode de comparaison de deux tableaux bidimensionnels avec des exemples de code spécifiques.
L'exemple de code est le suivant :
<?php //多维数组比较 $color1 = array(array('Red',80),array('Green',70),array('white',60)); $color2 = array(array('Green',70),array('Black',95)); $color = array_udiff($color1,$color2,create_function( '$a,$b','return strcmp(implode("",$a),implode("",$b));') ); echo "<pre class="brush:php;toolbar:false">"; print_r($color);
Dans ce code, on peut découvrir les différents éléments du tableau $color1 par rapport au tableau $color2.
Les résultats de la comparaison de sortie sont les suivants :
Introduction à la fonction :
1. array_udiff : Utilisez la fonction de rappel pour comparer les données afin de calculer l'ensemble de différences des tableaux
array_udiff ( array $array1 , array $array2 [, array $... ], callable $value_compare_func ) : array
Utilisez la fonction de rappel pour comparer les données et calculer la différence entre les tableaux. Contrairement à array_diff(), le premier utilise des fonctions intégrées pour comparer les données.
Le paramètre array1 représente le premier tableau. array2 deuxième tableau. fonction de comparaison de rappel value_compare_func.
Lorsque le premier argument est inférieur, égal ou supérieur au deuxième argument, la fonction de comparaison doit renvoyer un entier inférieur, égal ou supérieur à 0 en conséquence.
callback ( Mixed $a, Mixed $b ): int
Valeur de retour, renvoie toutes les valeurs du tableau1 qui n'apparaissent pas dans les autres paramètres.
2. create_function : Créer une fonction anonyme
create_function ( string $args , string $code ): string
Créer une fonction anonyme basée sur les paramètres transmis , et renvoie un nom unique pour celui-ci.
Habituellement, ces paramètres seront transmis sous forme de chaînes délimitées par des guillemets simples. La raison de l'utilisation de chaînes entre guillemets simples est de protéger le nom de la variable contre l'analyse, qui devrait autrement être échappé si des guillemets doubles étaient utilisés, par exemple $avar.
args représente les paramètres de la fonction. le code représente le code de fonction.
La valeur de retour est un nom de fonction unique sous la forme d'une chaîne ou d'une erreur FALSE.
3. strcmp : comparaison de chaînes binaires sécurisées
strcmp ( string $str1 , string $str2 ) : int
Notez que cette comparaison est sensible à la casse.
Le paramètre str1 représente la première chaîne. str2 représente la deuxième chaîne.
La valeur de retour est que si str1 est inférieur à str2, renvoie
4. imploser : convertir la valeur d'un tableau unidimensionnel en chaîne
Cet article est une introduction à la méthode de comparaison de deux tableaux multidimensionnels PHP . C'est également très utile et facile à comprendre, j'espère que cela sera utile aux amis dans le besoin !
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!