Zum Inhalt springen

Die PHP-Funktion array_intersect_key() verstehen

Die PHP-Funktion array_intersect_key() ist ein nützliches Werkzeug zum Vergleichen von Arrays und zum Zurückgeben nur der Werte mit übereinstimmenden Schlüsseln. In diesem Artikel werden wir uns mit dem Zweck und der Verwendung dieser Funktion befassen, einschließlich Beispielen und Überlegungen, die Sie bei der Anwendung beachten sollten.

Zweck von array_intersect_key()

Der Hauptzweck der Funktion array_intersect_key() besteht darin, zwei oder mehr Arrays zu vergleichen und nur die Werte zurückzugeben, die übereinstimmende Schlüssel haben. Dies kann in verschiedenen Situationen nützlich sein, in denen Sie Arrays vergleichen und bestimmte Daten extrahieren möchten.

Verwendung von array_intersect_key()

Die grundlegende Syntax für die Funktion array_intersect_key() lautet wie folgt:

PHP-Syntax der Funktion array_intersect_key

php
array_intersect_key(array1, array2, array3, ...);

In dieser Syntax ist array1 das erste zu vergleichende Array, array2 das zweite zu vergleichende Array und so weiter. Die Funktion gibt ein Array zurück, das nur die Werte aus array1 enthält, deren Schlüssel in allen zu vergleichenden Arrays vorhanden sind.

Beispiele für array_intersect_key()

Hier sind einige Beispiele, die die Verwendung von array_intersect_key() veranschaulichen sollen.

Beispiel 1: Vergleichen von zwei Arrays

PHP: Vergleichen von zwei Arrays mit der Funktion array_intersect_key

php
<?php

$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "b" => "yellow", "d" => "red");
$result = array_intersect_key($array1, $array2);
print_r($result);

?>

In diesem Beispiel werden zwei Arrays, $array1 und $array2, verglichen. Die Funktion array_intersect_key() gibt ein Array zurück, das nur die Werte aus $array1 enthält, deren Schlüssel in beiden Arrays vorhanden sind:


console
Array
(
    [a] => green
    [b] => brown
)

Beispiel 2: Vergleichen von drei Arrays

PHP: Vergleichen mehrerer Arrays mit der Funktion array_intersect_key

php
<?php

$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "b" => "yellow", "d" => "red");
$array3 = array("a" => "green", "c" => "brown", "g" => "blue");
$result = array_intersect_key($array1, $array2, $array3);
print_r($result);

?>

In diesem Beispiel werden drei Arrays, $array1, $array2 und $array3, verglichen. Die Funktion array_intersect_key() gibt ein Array zurück, das nur die Werte aus $array1 enthält, deren Schlüssel in allen drei Arrays vorhanden sind:


console
Array
(
    [a] => green
)

Überlegungen zur Verwendung von array_intersect_key()

Beachten Sie bei der Verwendung der Funktion array_intersect_key() folgende Punkte:

  • Die Funktion vergleicht nur Schlüssel, keine Werte.
  • Die Reihenfolge der Arrays ist nicht relevant.
  • Die Funktion ist case-sensitiv.
  • Wenn eines der zu vergleichenden Arrays numerische Schlüssel enthält, werden diese als Ganzzahlen und nicht als Strings verglichen.

Fazit

Zusammenfassend lässt sich sagen, dass die Funktion array_intersect_key() ein nützliches Werkzeug zum Vergleichen von Arrays und zum Zurückgeben nur der Werte mit übereinstimmenden Schlüsseln ist. Durch das Verständnis des Zwecks und der Verwendung dieser Funktion, einschließlich der Beispiele und Überlegungen, können Sie sie effektiv in Ihren PHP-Projekten einsetzen.

Praxis

Was macht die Funktion array_intersect_key() in PHP?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.