Funktion array_diff_key

Die Funktion array_diff_key vergleicht die Schlüssel von zwei oder mehr Arrays und gibt ein Array zurück, das die Elemente des ersten Arrays enthält, deren Schlüssel in den anderen Arrays nicht vorhanden sind. Der Vergleich erfolgt nur anhand der Schlüssel, die Werte der Elemente werden nicht berücksichtigt.

Syntax

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

Beispiel

Vergleichen wir zwei Arrays anhand ihrer Schlüssel:

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

Ergebnis der Codeausführung:

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

Beispiel

Vergleich von drei Arrays anhand ihrer Schlüssel:

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);
?>

Ergebnis der Codeausführung:

php[3 => 'c']

Beispiel

Verwendung von numerischen und String-Schlüsseln:

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

Ergebnis der Codeausführung:

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

Siehe auch