# array_intersect_ukey

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

array_intersect_ukey — Calcule l'intersection de deux tableaux en utilisant une fonction de rappel sur les clés pour comparaison

### Description

array_intersect_ukey(array `$array`, array `...$arrays`, callable `$key_compare_func`): array

array_intersect_ukey() retourne un tableau contenant toutes les valeurs du tableau `array` qui contiennent des clés présentes dans tous les arguments.

### Liste de paramètres

`array`

  Tableau initial pour la comparaison des tableaux.

`arrays`

  Tableaux à comparer contre

`key_compare_func`

  La fonction de comparaison doit retourner un entier inférieur à, égal à, ou supérieur à 0 si le premier argument est considéré comme, respectivement, inférieur à, égal à, ou supérieur au second.

  callback(mixed `$a`, mixed `$b`): int
  Attention

  Retourner des valeurs non-entières à partir de la fonction de comparaison, telles que float, entraînera une conversion interne de la valeur de retour du rappel en int. Ainsi, des valeurs telles que `0.99` et `0.1` seront toutes deux converties en une valeur entière de `0`, ce qui comparera de telles valeurs comme égales.

### Valeurs de retour

Retourne les valeurs du tableau `array` dont les clés existent dans tous les arguments.

### Exemples

Exemple #1 Exemple avec array_intersect_ukey()

`<?php
function key_compare_func($key1, $key2)
{
if ($key1 == $key2)
return 0;
else if ($key1 > $key2)
return 1;
else
return -1;
}
$array1 = array('blue' => 1, 'red' => 2, 'green' => 3, 'purple' => 4);
$array2 = array('green' => 5, 'blue' => 6, 'yellow' => 7, 'cyan' => 8);
var_dump(array_intersect_ukey($array1, $array2, 'key_compare_func'));
?>`

L'exemple ci-dessus va afficher :

    array(2) {
      ["blue"]=>
      int(1)
      ["green"]=>
      int(3)
    }

Dans cet exemple, vous pouvez voir que seules les clés `'bleu'` et `'vert'` sont présentes dans les deux tableaux et, donc, elles sont retournées. Notez également que les valeurs pour les clés `'bleu'` et `'vert'` diffèrent entre les deux tableaux. Néanmoins, elles correspondent toujours car uniquement les clés sont vérifiées. Les valeurs retournées sont celles du tableau `array`.

### Voir aussi

- array_diff() - Calcule la différence entre des tableaux
- array_udiff() - Calcule la différence entre deux tableaux en utilisant une fonction rappel
- array_diff_assoc() - Calcule la différence de deux tableaux, en prenant aussi en compte les clés
- array_diff_uassoc() - Calcule la différence entre deux tableaux associatifs, à l'aide d'une fonction de rappel
- array_udiff_assoc() - Calcule la différence entre des tableaux avec vérification des index, compare les données avec une fonction de rappel
- array_udiff_uassoc() - Calcule la différence de deux tableaux associatifs, compare les données et les index avec une fonction de rappel
- array_diff_key() - Calcule la différence de deux tableaux en utilisant les clés pour comparaison
- array_diff_ukey() - Calcule la différence entre deux tableaux en utilisant une fonction de rappel sur les clés pour comparaison
- array_intersect() - Calcule l'intersection de tableaux
- array_intersect_assoc() - Calcule l'intersection de deux tableaux avec des tests sur les index
- array_intersect_uassoc() - Calcule l'intersection de deux tableaux avec des tests sur les index, compare les index en utilisant une fonction de rappel
- array_intersect_key() - Calcule l'intersection de deux tableaux en utilisant les clés pour comparaison