(PHP 5 >= 5.1.0, PHP 7)
array_intersect_key — Ermittelt die Schnittmenge von Arrays, indem es die Schlüssel vergleicht
$array1
      , array $array2
      [, array $...
     ] )
     array_intersect_key() gibt ein Array zurück, welches
     alle Werte von array1 enthält, die Schlüssel 
     besitzen, die in allen anderen Argumenten enthalten sind.
    
array1Das Array mit den Hauptschlüsseln, auf die geprüft werden soll.
array2Ein Array, gegen welches die Schlüssel geprüft werden.
...Eine variable Liste zu vergleichender Arrays.
   Gibt ein assoziatives Array zurück, welches alle Einträge
   von array1 enthält, deren Schlüssel
   in allen weiteren Arrays vorhanden sind.
  
Beispiel #1 array_intersect_key()-Beispiel
<?php
$array1 = array('blau' => 1, 'rot'  => 2, 'grün' => 3, 'violett' => 4);
$array2 = array('grün' => 5, 'blau' => 6, 'gelb' => 7, 'türkis'  => 8);
var_dump(array_intersect_key($array1, $array2));
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
array(2) {
  ["blau"]=>
  int(1)
  ["grün"]=>
  int(3)
})
     In unserem Beispiel sehen Sie, dass nur die Schlüssel 
     'blau' und 'grün' in beiden Arrays
     vorhanden sind und daher zurückgegeben werden. Beachten Sie auch, dass
     'blau' und 'grün' in beiden Arrays
     unterschiedliche Werte besitzen. Eine
     Übereinstimmung wird dennoch festgestellt, da nur die Schlüssel geprüft werden.
     Die zurückgegebenen Werte sind diejenigen aus array1.
    
Die beiden Schlüssel des Schlüssel => Wert-Paares werden als gleich erachtet, genau dann wenn (string) $key1 === (string) $key2 . Anders ausgedrückt findet eine strikte Prüfung statt, in der die String-Repräsentationen gleich sein müssen.