Manuel PHP
Précédent |  | Suivant

# array_diff_ukey

(PHP 5 >= 5.1.0RC1)

array_diff_ukey -- Calcule la différence entre deux tableaux en utilisant une fonction de callback sur les clés pour comparaison

## Description

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

array_diff_ukey() retourne un tableau contenant toutes les valeurs de array1 où les clés de ce tableau ne sont présentes dans aucun des autres arguments array1, .... Notez que l'associativité est préservée. Cette fonction fonctionne de la même façon que la fonction array_diff() excepté le fait que la comparaison est faite sur les clés au lieu des valeurs.

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

Exemple 1. Exemple avec array_diff_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_diff_ukey($array1, $array2, 'key_compare_func')); ?>`

L'exemple ci-dessus va afficher :

    array(2) {
      ["rouge"]=>
      int(2)
      ["violet"]=>
      int(4)
    }

> Note : Notez que cette fonction vérifie uniquement une dimension d'un tableau possédant n dimensions. Bien sûr, vous pouvez vérifier une dimension plus profonde en utilisant, par exemple, array_diff_ukey($array1[0], $array2[0], 'callback_func');.

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

Précédent | Sommaire | Suivant
array_diff_uassoc | Niveau supérieur | array_diff