Fonction array_intersect_uassoc
La fonction array_intersect_uassoc compare des tableaux et retourne les éléments qui sont présents dans tous les tableaux, en utilisant une fonction de rappel pour comparer les clés. Le premier paramètre est le tableau principal, les suivants sont les tableaux à comparer, et le dernier paramètre est la fonction de rappel pour comparer les clés.
Syntaxe
array_intersect_uassoc(array $array1, array $array2, ..., callable $key_compare_func): array;
Exemple
Comparons deux tableaux avec une vérification des clés via une fonction utilisateur :
<?php
$array1 = ['a' => 1, 'b' => 2, 'c' => 3];
$array2 = ['a' => 1, 'b' => 5, 'c' => 3];
function compareKeys($a, $b) {
return $a <=> $b;
}
$res = array_intersect_uassoc($array1, $array2, 'compareKeys');
print_r($res);
?>
Résultat de l'exécution du code :
['a' => 1, 'c' => 3]
Exemple
Comparons trois tableaux avec une fonction utilisateur de comparaison des clés :
<?php
$array1 = [1 => 'a', 2 => 'b', 3 => 'c'];
$array2 = [1 => 'a', 4 => 'b', 3 => 'd'];
$array3 = [1 => 'a', 3 => 'e'];
function keyCompare($key1, $key2) {
if ($key1 == $key2) {
return 0;
}
return ($key1 < $key2) ? -1 : 1;
}
$res = array_intersect_uassoc($array1, $array2, $array3, 'keyCompare');
print_r($res);
?>
Résultat de l'exécution du code :
[1 => 'a']
Voir aussi
-
la fonction
array_intersect,
qui calcule l'intersection de tableaux sans vérification des clés -
la fonction
array_intersect_assoc,
qui calcule l'intersection de tableaux avec vérification des clés -
la fonction
array_uintersect_assoc,
qui calcule l'intersection de tableaux avec vérification des clés via une fonction de rappel