Manuel PHP
Précédent |  | Suivant

# array_intersect_ukey

(PHP 5 >= 5.1.0RC1)

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

## Description

array array_intersect_ukey ( array array1, array array2 [, array ..., callback key_compare_func] )

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

Cette comparaison est effectuée en utilisant une fonction de callback fournie par l'utilisateur. La fonction de callback doit retourner un entier plus petit que, égal à ou plus grand que `0` si la première clé est considérée, respectivement, comme plus petite que, égale à ou plus grande que la seconde.

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('bleu' => 1, 'rouge' => 2, 'vert' => 3, 'violet' => 4); $array2 = array('vert' => 5, 'bleu' => 6, 'jaune' => 7, 'cyan' => 8); var_dump(array_intersect_ukey($array1, $array2, 'key_compare_func')); ?>`

L'exemple ci-dessus va afficher :

    array(2) {
      ["bleu"]=>
      int(1)
      ["vert"]=>
      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 `array1`.

Voir aussi array_diff(), array_udiff() array_diff_assoc(), array_diff_uassoc(), array_udiff_assoc(), array_udiff_uassoc(), array_diff_key(), array_diff_ukey(), array_intersect(), array_intersect_assoc(), array_intersect_uassoc() et array_intersect_key().

Précédent | Sommaire | Suivant
array_intersect_uassoc | Niveau supérieur | array_intersect