PHP renvoie le tableau de différence de deux tableaux

王林
Libérer: 2024-03-21 09:40:01
avant
784 Les gens l'ont consulté

L'éditeur PHP Xigua vous présentera comment utiliser PHP pour renvoyer le tableau de différence de deux tableaux. Un tableau de différence fait référence à un nouveau tableau formé en prenant des éléments du premier tableau qui ne figurent pas dans le deuxième tableau. Cette fonctionnalité peut être facilement obtenue en utilisant la fonction array_diff(). Passez simplement deux tableaux comme arguments et la fonction renverra un nouveau tableau contenant les éléments de l'ensemble de différences. Cette méthode est très pratique et rapide et convient pour résoudre divers problèmes de fonctionnement des baies.

Comment utiliser PHP pour renvoyer le tableau de différence de deux tableaux

Dans php, nous pouvons renvoyer la différence de deux tableaux en utilisant la fonction array_diff(). Cette fonction accepte deux tableaux comme arguments et renvoie un nouveau tableau contenant tous les éléments du premier tableau qui ne sont pas dans le deuxième tableau.

Grammaire :

array_diff(array1, array2);
Copier après la connexion

Paramètres :

  • array1 : Le tableau dont supprimer les éléments.
  • array2 : Le tableau où se trouve l'élément à supprimer.

Valeur de retour :

Un nouveau tableau contenant tous les éléments de array1中所有不在array2 qui ne sont pas dans

.

Exemple :

$array1 = [1, 2, 3, 4, 5];
$array2 = [2, 4];

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

print_r($diff); // 输出:Array ( [0] => 1 [1] => 3 [2] => 5 )
Copier après la connexion
array_diff()函数返回了一个包含array1中的元素1、3和5的新数组,因为这些元素不在array2Dans l'exemple ci-dessus, la fonction

renvoie un nouveau tableau contenant les éléments 1, 3 et 5 dans

, puisque ces éléments ne sont pas dans .

Fonction de comparaison personnalisée : array_udiff()

Nous pouvons utiliser la fonction pour personnaliser la fonction de comparaison afin de déterminer quels éléments doivent être supprimés du premier tableau.

Grammaire :

array_udiff(array1, array2, callback);
Copier après la connexion

    Paramètres :
  • array1
  • array2 : Le tableau dont supprimer les éléments.
  • callback : Le tableau où se trouve l'élément à supprimer.

 : Une fonction de comparaison définie par l'utilisateur qui accepte deux éléments comme arguments et renvoie -1 (si le premier élément doit être supprimé), 0 (si les deux éléments sont égaux) ou 1 (si le deuxième élément doit être supprimé).

Exemple : array_udiff()函数来比较数组中对象的name属性。它返回了一个包含array1中所有name属性与array2

$array1 = [
["name" => "John", "age" => 30],
["name" => "Mary", "age" => 25],
["name" => "Bob", "age" => 40],
];

$array2 = [
["name" => "Mary", "age" => 25],
];

$diff = array_udiff($array1, $array2, function ($a, $b) {
return strcmp($a["name"], $b["name"]);
});

print_r($diff); // 输出:Array ( [0] => Array ( [name] => John [age] => 30 ) [1] => Array ( [name] => Bob [age] => 40 ) )
Copier après la connexion

Dans l'exemple ci-dessus, nous utilisons la fonction pour comparer la propriété name des objets du tableau. Il renvoie un nouveau tableau contenant toutes les propriétés name dans et les différents objets dans

.
  • array_diff()array_udiff()Attention :
  • Les fonctions
  • et
  • compareront uniquement les éléments du tableau avec le même array_keys()array_values()index
  • .
🎜Si deux tableaux ont des clés différentes, ces clés seront ignorées et seuls les éléments ayant la même clé seront comparés. 🎜 🎜Nous pouvons utiliser la fonction 🎜 pour obtenir une liste de toutes les clés ou valeurs d'un tableau afin de pouvoir comparer les tableaux en fonction de différents critères. 🎜 🎜

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:lsjlt.com
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!