Manuel PHP
array_udiff
(PHP 5)
array_udiff — Calcule la différence entre deux tableaux en utilisant une fonction rappel
Description
Calcule la différence entre deux tableaux en utilisant une fonction rappel. Cette fonctionne agit comme la fonction array_diff() qui utilise une fonction interne pour comparer les données.
Liste de paramètres
- array1
-
Le premier tableau.
- array2
-
Le second tableau.
- data_compare_func
-
La fonction de comparaison.
La fonction utilisateur de rappel est utilisée pour la comparaison. Elle doit retourner un entier plus petit que, égal à, ou plus grand que zéro si le premier argument est respectivement plus petit que, égal au, ou plus grand que le second.
Valeurs de retour
Retourne un tableau contenant toutes les valeurs du tableau array1 qui ne sont pas présentes dans aucun autre argument.
Exemples
Exemple #1 Exemple avec array_udiff()
- <?php
- class cr {
- private $priv_member;
- function cr($val)
- {
- $this->priv_member = $val;
- }
- static function comp_func_cr($a, $b)
- {
- if ($a->priv_member === $b->priv_member) return 0;
- return ($a->priv_member > $b->priv_member)? 1:-1;
- }
- }
- $a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
- $b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);
- $result = array_udiff($a, $b, array("cr", "comp_func_cr"));
- print_r($result);
- ?>
L'exemple ci-dessus va afficher :
Notes
Note: Notez que cette fonction ne vérifie qu'une seule dimension d'un tableau multidimensionnel. Vous pouvez, bien sûr, tester une dimension particulière en utilisant par exemple array_udiff($array1[0], $array2[0], "data_compare_func");.
Remonter 
