array_intersect_key

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

array_intersect_keyErmittelt die Schnittmenge von Arrays, indem es die Schlüssel vergleicht

Beschreibung

array_intersect_key(array$array, array...$arrays): array

array_intersect_key() gibt ein Array zurück, welches alle Werte von array enthält, die Schlüssel besitzen, die in allen anderen Argumenten enthalten sind.

Parameter-Liste

array

Das Array mit den Hauptschlüsseln, auf die geprüft werden soll.

arrays

Arrays zum Vergleichen der Schlüssel.

Rückgabewerte

Gibt ein assoziatives Array zurück, welches alle Einträge von array enthält, deren Schlüssel in allen weiteren Arrays vorhanden sind.

Changelog

VersionBeschreibung
8.0.0 Diese Funktion kann jetzt mit nur einem Parameter aufgerufen werden. Zuvor waren mindestens zwei Parameter erforderlich.

Beispiele

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 ist zu sehen, dass nur die Schlüssel 'blau' und 'grün' in beiden Arrays vorhanden sind und daher zurückgegeben werden. Zu beachten ist 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 array.

Die beiden Schlüssel der Schlüssel => Wert-Paare werden genau dann als gleich erachtet, wenn (string) $key1 === (string) $key2 . Anders ausgedrückt findet eine strikte Prüfung statt, in der die String-Darstellungen gleich sein müssen.

Siehe auch

  • array_diff() - Ermittelt die Unterschiede zwischen Arrays
  • array_udiff() - Ermittelt den Unterschied zwischen Arrays mittels einer Callbackfunktion für den Datenvergleich
  • array_diff_assoc() - Berechnet den Unterschied zwischen Arrays mit zusätzlicher Indexprüfung
  • array_diff_uassoc() - Berechnet den Unterschied von Arrays mit zusätzlicher Indexprüfung, welche durch eine benutzerdefinierte Callback-Funktion vorgenommen wird
  • array_udiff_assoc() - Ermittelt den Unterschied zwischen Arrays mit zusätzlicher Indexprüfung, vergleicht mittels einer Callbackfunktion
  • array_udiff_uassoc() - Ermittelt den Unterschied zwischen Arrays mit zusätzlicher Indexprüfung, vergleicht Daten und Indizes mittels einer Callbackfunktion
  • array_diff_key() - Berechnet den Unterschied zwischen Arrays, indem es die Schlüssel vergleicht
  • array_diff_ukey() - Berechnet den Unterschied zwischen Arrays mittels einer Callbackfunktion für den Vergleich der Schlüssel
  • array_intersect() - Ermittelt die Schnittmenge von Arrays
  • array_intersect_assoc() - Ermittelt die Schnittmenge von Arrays mit zusätzlicher Indexprüfung
  • array_intersect_uassoc() - Ermittelt die Schnittmenge von Arrays mit Indexprüfung; vergleicht Indizes mit einer Callbackfunktion
  • array_intersect_ukey() - Ermittelt die Schnittmenge zweier Arrays mittels eines durch eine Callbackfunktion durchgeführten Schlüsselvergleiches
To Top