array_udiff
Calcule la différence entre deux tableaux en utilisant une fonction rappel
&reftitle.description;
arrayarray_udiff
arrayarray1
arrayarray2
array ...
callbackdata_compare_func
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.
&reftitle.parameters;
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.
&reftitle.returnvalues;
Retourne un tableau contenant toutes les valeurs du tableau
array1 qui ne sont pas présentes dans aucun
autre argument.
&reftitle.examples;
Exemple avec array_udiff
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);
?>
]]>
&example.outputs;
cr Object
(
[priv_member:private] => 12
)
[0] => cr Object
(
[priv_member:private] => 23
)
)
]]>
&reftitle.notes;
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");.
&reftitle.seealso;
array_diff
array_diff_assoc
array_diff_uassoc
array_udiff_assoc
array_udiff_uassoc
array_intersect
array_intersect_assoc
array_uintersect
array_uintersect_assoc
array_uintersect_uassoc