Maison >développement back-end >tutoriel php >Fonction array_diff() de PHP : Comment comparer deux tableaux et renvoyer la valeur de différence
Fonction array_diff() de PHP : Comment comparer deux tableaux et renvoyer la valeur de différence, des exemples de code spécifiques sont nécessaires
En langage PHP, le tableau est l'une des structures de données les plus courantes, souvent utilisée pour stocker un ensemble de données ou Enregistrer. Lorsque vous avez besoin de comparer les différences entre deux tableaux, PHP fournit une fonction pratique array_diff(), qui compare deux tableaux et renvoie toutes les valeurs différentes. La syntaxe de la fonction
array_diff() est la suivante :
array array_diff ( array $array1 , array $array2 [, array $... ] )
Cette fonction accepte deux tableaux ou plus comme paramètres et renvoie un tableau contenant tous les différents Un nouveau tableau de valeurs. Cela fonctionne en comparant les valeurs du premier tableau avec les valeurs des tableaux suivants et en renvoyant les valeurs du premier tableau qui sont différentes des tableaux restants. Si une valeur est la même dans tous les tableaux, elle ne sera pas renvoyée.
Ensuite, nous démontrerons l'utilisation de la fonction array_diff() à travers un exemple simple.
Tout d'abord, définissons deux tableaux :
$array1 = array("foo", "bar", "baz"); $array2 = array("bar", "qux");
Dans ces deux tableaux, $array1 contient trois chaînes différentes, tandis que $array2 contient deux chaînes différentes, parmi lesquelles "bar" est leur valeur commune.
Ensuite, nous utiliserons la fonction array_diff() pour comparer les deux tableaux et renvoyer toutes les différentes valeurs :
$diff = array_diff($array1, $array2); print_r($diff);
La sortie du code ci-dessus est :
Array ( [0] => foo [2] => baz )
Comme vous pouvez le voir, le tableau $diff contient $ All valeurs dans array1 qui sont différentes de $array2. La valeur "bar", qui existe dans les deux tableaux, n'est pas renvoyée.
Nous pouvons également comparer les valeurs de plusieurs tableaux en utilisant plus de paramètres de tableau :
$array3 = array("qux", "corge"); $diff = array_diff($array1, $array2, $array3); print_r($diff);
Le code ci-dessus combine $array1 avec $array2 et $array3 pour renvoyer toutes les différentes valeurs. Le résultat est :
Array ( [0] => foo [2] => baz )
Vous pouvez le voir. "qux" qui apparaît dans le troisième tableau n'est pas renvoyé car il existe également dans $array2.
De plus, si vous avez besoin de comparer des tableaux associatifs, vous pouvez utiliser la fonction array_diff_assoc(). Son utilisation est similaire à array_diff(), mais elle comparera également les valeurs clés du tableau.
Enfin, il est important de noter que la fonction array_diff() compare uniquement les valeurs, pas les clés. Par exemple, bien que les deux tableaux suivants aient les mêmes valeurs, mais des valeurs de clé différentes :
$array1 = array("foo" => 1, "bar" => 2, "baz" => 3); $array2 = array("qux" => 1, "quux" => 2, "baz" => 3);
Lors de la comparaison de ces deux tableaux à l'aide de array_diff(), seules leurs valeurs, et non les valeurs de clé, seront comparées. Par conséquent, $array1 et $array2 seront considérés comme des tableaux différents.
Pour résumer, la fonction array_diff() est une fonction de traitement de tableau très pratique en PHP. Elle peut comparer différentes valeurs entre plusieurs tableaux et renvoyer un nouveau tableau. L'utilisation de cette fonction peut nous aider à traiter les tableaux plus facilement.
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!