Maison >développement back-end >tutoriel php >Comment trouver les différences entre les lignes associatives de deux tableaux multidimensionnels en PHP ?

Comment trouver les différences entre les lignes associatives de deux tableaux multidimensionnels en PHP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-11-13 00:10:02393parcourir

How to Find Differences Between Associative Rows of Two Multidimensional Arrays in PHP?

Récupérer les différences entre les lignes associatives de deux tableaux multidimensionnels

En PHP, nous pouvons exploiter les fonctions de tableau pour comparer et identifier les différences entre les tableaux. Considérez la nécessité de retrouver les informations présentes dans $pageids mais pas dans $parentpage. Cependant, l'utilisation de array_diff_assoc() seule peut ne pas suffire dans ce scénario.

Pour comparer efficacement les tableaux imbriqués, nous pouvons utiliser une combinaison de techniques :

$serializedPageIds = array_map('serialize', $pageids);
$serializedParentPage = array_map('serialize', $parentpage);

$pageWithNoChildren = array_map('unserialize',
    array_diff($serializedPageIds, $serializedParentPage));

Cette approche implique les étapes suivantes :

  1. Sérialiser des tableaux multidimensionnels : En utilisant array_map('serialize', ...), nous convertissons les tableaux multidimensionnels $pageids et $parentpage en tableaux unidimensionnels contenant des représentations sous forme de chaîne de chaque sous-tableau.
  2. Comparez les tableaux sérialisés : array_diff() compare les tableaux unidimensionnels créés à l'étape 1, en identifiant les différences entre eux.
  3. Unserialize Différences : Une fois les différences identifiées, array_map('unserialize', ...) est appliqué pour reconvertir les représentations sous forme de chaîne en sous-tableaux, ce qui donne le résultat souhaité.

Le résultat, $pageWithNoChildren, contiendra les lignes associatives de $pageids qui ne sont pas présentes dans $parentpage. Cette technique permet une comparaison efficace et précise des tableaux imbriqués.

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