"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment trouver des différences de tableau basées sur des valeurs de colonne imbriquées spécifiques?

Comment trouver des différences de tableau basées sur des valeurs de colonne imbriquées spécifiques?

Publié le 2025-02-17
Parcourir:104

How to Find Array Differences Based on Specific Nested Column Values?

Recherche des différences de tableau basées sur des valeurs de colonne spécifiques

Dans cette situation, où vous souhaitez comparer les tableaux basés sur une valeur imbriquée dans chaque élément , la fonction Array_Diff () standard peut ne pas suffire. Pour y parvenir, vous pouvez tirer parti d'une fonction de comparaison personnalisée en conjonction avec array_udiff ().

Implémentation de la solution

  1. Définir une fonction de comparaison définie par l'utilisateur:
    Créez une fonction de comparaison personnalisée qui se concentre sur les valeurs «élément» que vous souhaitez comparer.
function udiffCompare($a, $b)
{
    return $a['ITEM'] - $b['ITEM'];
}
  1. Utilisez array_udiff ():
    maintenant, vous pouvez utiliser array_udiff () pour comparer les arrays en utilisant votre fonction de comparaison personnalisée comme un rappel. Cela vous donnera les différences que vous recherchez.
$arrdiff = array_udiff($arr2, $arr1, 'udiffCompare');
print_r($arrdiff);

sortie attendue:

Le tableau résultant, $ arrdiff, contiendra les éléments du deuxième tableau (Arr2) qui diffèrent du premier Array (ARR1) en fonction des valeurs d'élément. Dans ce cas, il reviendra:

Array
(
    [3] => Array
        (
            [ITEM] => 4
        )
)

Cette approche garantit que vous pouvez comparer et filtrer efficacement les tableaux basés sur des valeurs de colonne spécifiques, vous fournissant les résultats souhaités.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3