PHP array_udiff_uassoc()

La fonction array_udiff_uassoc() est une fonction intégrée en PHP et est utilisée pour faire la différence entre deux ou plusieurs tableaux. La fonction calcule les différences en utilisant deux fonctions définies par l’utilisateur. Il compare les valeurs et les clés à l’aide des fonctions de rappel(callback) et renvoie la différence.
 

Syntaxe
array_udiff_uassoc(arr1, arr2, arr3, ..., user_function_key, user_function_value)

 
 

Paramètres
  • arr1(Obligatoire) : Le tableau à comparer.
  • arr2(Obligatoire) : Un tableau à comparer avec le premier tableau.
  • arr3, …(Optionnelle) : Autres tableaux à comparer avec le premier tableau.
  • user_function_key(Obligatoire) : fonction définie par l’utilisateur qui compare les clés du tableau. La fonction de comparaison doit renvoyer un entier <, = ou > à 0 si le premier argument est <, = ou > au deuxième argument.
  • user_function_value(Obligatoire) : fonction définie par l’utilisateur qui compare les valeurs du tableau. La fonction de comparaison doit renvoyer un entier <, = ou > à 0 si le premier argument est <, = ou > au deuxième argument.

 

Valeur de retour

La fonction renvoie un tableau contenant les entrées de « arr1 » qui ne sont pas présentes dans aucun des autres tableaux.
 

Version PHP:

5+
 
 

Exemple :
<?php
	function compare_key($a, $b)
	{
		if ($a === $b)
		{
			return 0;
		}
		return ($a > $b) ? 1 : -1;
	}
	
	function compare_values($a, $b)
	{
		if ($a === $b)
		{
			return 0;
		}
		return ($a > $b) ? 1 : -1;
	}

	$arr1 = array("a"=>"PHP", "b"=>"Java", "c"=>"C++");
	$arr2 = array("a"=>"C#","b"=>"Perl","d"=>"C++");

	$diff = array_udiff_uassoc($arr1, $arr2, "compare_key", "compare_values");
	print_r($diff);
?>

 
Sortie:

Array ( 
	[a] => PHP 
	[b] => Java 
	[c] => C++ 
)
Questions d'entretiens PHPQuestions d’entretiens PHP – Partie 1Questions sur PHP avec des réponses pour la préparation des entretiens d’embauche, des tests en ligne, aux examens et aux certifications. Ces questions et réponses…Lire plus
Partagez cet article

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *