Fonction array_diff_key

La fonction array_diff_key compare les clés de deux tableaux ou plus et retourne un tableau contenant les éléments du premier tableau dont les clés sont absentes des autres tableaux. La comparaison se fait uniquement sur les clés, les valeurs des éléments ne sont pas prises en compte.

Syntaxe

phparray_diff_key(array $array1, array $array2 [, array $...]): array

Exemple

Comparons deux tableaux par leurs clés :

php<?php
  $arr1 = ['a' => 1, 'b' => 2, 'c' => 3];
  $arr2 = ['a' => 4, 'd' => 5];
  
  $res = array_diff_key($arr1, $arr2);
  print_r($res);
?>

Résultat de l'exécution du code :

php['b' => 2, 'c' => 3]

Exemple

Comparaison de trois tableaux par leurs clés :

php<?php
  $arr1 = [1 => 'a', 2 => 'b', 3 => 'c'];
  $arr2 = [1 => 'd', 4 => 'e'];
  $arr3 = [5 => 'f', 2 => 'g'];
  
  $res = array_diff_key($arr1, $arr2, $arr3);
  print_r($res);
?>

Résultat de l'exécution du code :

php[3 => 'c']

Exemple

Utilisation de clés numériques et chaînes de caractères :

php<?php
  $arr1 = ['color' => 'red', 1 => 'a', 2 => 'b'];
  $arr2 = [1 => 'c', 'size' => 'XL'];
  
  $res = array_diff_key($arr1, $arr2);
  print_r($res);
?>

Résultat de l'exécution du code :

php['color' => 'red', 2 => 'b']

Voir aussi