Fonction array_diff_ukey
La fonction array_diff_ukey compare les clés de plusieurs tableaux et retourne les éléments du premier tableau dont les clés sont absentes des autres tableaux. Pour comparer les clés, une fonction de rappel définie par l'utilisateur est utilisée. Le premier paramètre est le tableau principal, les paramètres suivants sont les tableaux à comparer, et le dernier paramètre est la fonction de rappel.
Syntaxe
array_diff_ukey(array $array1, array $array2 [, array $... ], callable $key_compare_func): array
Exemple
Comparons deux tableaux par leurs clés, en utilisant la fonction de rappel strcasecmp (comparaison insensible à la casse) :
<?php
$array1 = ['A' => 1, 'b' => 2, 'C' => 3];
$array2 = ['a' => 4, 'B' => 5];
$res = array_diff_ukey($array1, $array2, 'strcasecmp');
print_r($res);
?>
Résultat de l'exécution du code :
['C' => 3]
Exemple
Comparons trois tableaux avec une fonction de rappel personnalisée :
<?php
function keyCompare($key1, $key2) {
return $key1 <=> $key2;
}
$array1 = [1 => 'a', 2 => 'b', 3 => 'c'];
$array2 = [1 => 'd', 4 => 'e'];
$array3 = [2 => 'f'];
$res = array_diff_ukey($array1, $array2, $array3, 'keyCompare');
print_r($res);
?>
Résultat de l'exécution du code :
[3 => 'c']
Voir aussi
-
la fonction
array_diff,
qui compare les tableaux par leurs valeurs -
la fonction
array_diff_key,
qui compare les tableaux par leurs clés -
la fonction
array_udiff,
qui compare les tableaux via une fonction de rappel