Heim Backend-Entwicklung PHP-Tutorial So verwenden Sie die Rückruffunktion zum Vergleichen von Schlüsselnamen, um die Schnittmenge von Arrays in PHP zu berechnen

So verwenden Sie die Rückruffunktion zum Vergleichen von Schlüsselnamen, um die Schnittmenge von Arrays in PHP zu berechnen

Mar 19, 2024 pm 12:37 PM
php编程 后端开发

Der PHP-Editor Youzi führt Sie ausführlich in die Verwendung der Callback-Funktion zum Vergleichen von Schlüsselnamen ein, um die Schnittmenge von Arrays zu berechnen. In PHP können wir die Funktion array_uintersect_assoc() in Kombination mit einer benutzerdefinierten Rückruffunktion verwenden, um Arrays basierend auf Schlüsselnamen zu vergleichen und das Schnittergebnis zurückzugeben. Durch prägnante Codebeispiele und Schritt-für-Schritt-Erklärungen erlernen Sie diese praktische Fähigkeit leicht und machen Ihre PHP-Entwicklung effizienter und flexibler.

PHP verwendet die Rückruffunktion, um Schlüsselnamen zu vergleichen, um die Array-Schnittmenge zu berechnen

:

Um die Schnittmenge zweier Arrays zu berechnen, also Elemente, die denselben Schlüsselnamen haben, können Sie die -Funktion von phparray_intersect_key() verwenden. Diese Funktion durchläuft das erste Array und prüft mithilfe der bereitgestellten Rückruffunktion, ob im zweiten Array ein Element mit demselben Schlüssel vorhanden ist.

Das Folgende ist die Syntax der Funktion:

array_intersect_key(array $array1, array $array2, callable $key_compare_func)
Nach dem Login kopieren

Unter ihnen:

  • $array1: das erste Array
  • $array2: Das zweite Array
  • $key_compare_func: Rückruffunktion zum Vergleichen von Schlüsselnamen

Die Rückruffunktion muss zwei Parameter akzeptieren, die die beiden zu vergleichenden Schlüsselnamen darstellen, und einen booleschen Wert zurückgeben, der angibt, ob die beiden Schlüsselnamen gleich sind.

Das folgende Beispiel zeigt, wie die Schnittmenge zweier Arrays mithilfe der array_intersect_key()-Funktion berechnet wird:

<?php

$array1 = ["apple" => "green", "banana" => "yellow", "orange" => "orange"];
$array2 = ["apple" => "red", "banana" => "green", "pear" => "green"];

// 定义比较键名的回调函数
$key_compare_func = function($key1, $key2) {
return $key1 === $key2;
};

// 计算数组交集
$intersection = array_intersect_key($array1, $array2, $key_compare_func);

print_r($intersection);

?>
Nach dem Login kopieren
Ausgabe:

Array
(
[apple] => green
[banana] => green
)
Nach dem Login kopieren

In diesem Beispiel vergleicht die Rückruffunktion

zwei Schlüsselnamen auf Gleichheit. In beiden Arrays sind nur die Schlüssel apple und banana vorhanden, sie bilden also die Schnittmenge.

$key_compare_func 比较两个键名是否相等。只有 applebanana

Anonyme Funktionen verwenden:

Sie können auch anonyme Funktionen verwenden, um Rückruffunktionen zu definieren und sie prägnanter zu gestalten. Hier ist das gleiche Beispiel mit anonymen Funktionen:

$intersection = array_intersect_key($array1, $array2, function($key1, $key2) {
return $key1 === $key2;
});
Nach dem Login kopieren

Pfeilfunktionen verwenden (PHP 7.4 und höher):

In PHP 7.4 und höher können Sie Pfeilfunktionen verwenden, um Ihren Code weiter zu vereinfachen:

$intersection = array_intersect_key($array1, $array2, fn($key1, $key2) => $key1 === $key2);
Nach dem Login kopieren

Vergleich benutzerdefinierter Schlüsselnamen:

Die Rückruffunktion ermöglicht eine benutzerdefinierte Vergleichslogik für Schlüsselnamen. Sie können beispielsweise die folgende Rückruffunktion verwenden, um Schlüsselnamen ohne Berücksichtigung der Groß- und Kleinschreibung zu vergleichen:

$key_compare_func = function($key1, $key2) {
return strtolower($key1) === strtolower($key2);
};
Nach dem Login kopieren

Auf diese Weise wird der Schnittpunkt korrekt berechnet, auch wenn die Schlüsselnamen der Arrays unterschiedliche Groß- und Kleinschreibung haben.

Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Rückruffunktion zum Vergleichen von Schlüsselnamen, um die Schnittmenge von Arrays in PHP zu berechnen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP formatiert Zeilen in CSV und schreibt Dateizeiger PHP formatiert Zeilen in CSV und schreibt Dateizeiger Mar 22, 2024 am 09:00 AM

PHP formatiert Zeilen in CSV und schreibt Dateizeiger

PHP ändert die aktuelle umask PHP ändert die aktuelle umask Mar 22, 2024 am 08:41 AM

PHP ändert die aktuelle umask

PHP erstellt eine Datei mit einem eindeutigen Dateinamen PHP erstellt eine Datei mit einem eindeutigen Dateinamen Mar 21, 2024 am 11:22 AM

PHP erstellt eine Datei mit einem eindeutigen Dateinamen

PHP berechnet den MD5-Hash der Datei PHP berechnet den MD5-Hash der Datei Mar 21, 2024 pm 01:42 PM

PHP berechnet den MD5-Hash der Datei

PHP gibt ein Array mit umgedrehten Schlüsseln zurück PHP gibt ein Array mit umgedrehten Schlüsseln zurück Mar 21, 2024 pm 02:10 PM

PHP gibt ein Array mit umgedrehten Schlüsseln zurück

PHP gibt die numerische Kodierung der Fehlermeldung in der vorherigen MySQL-Operation zurück PHP gibt die numerische Kodierung der Fehlermeldung in der vorherigen MySQL-Operation zurück Mar 22, 2024 pm 12:31 PM

PHP gibt die numerische Kodierung der Fehlermeldung in der vorherigen MySQL-Operation zurück

PHP schneidet die Datei auf die angegebene Länge ab PHP schneidet die Datei auf die angegebene Länge ab Mar 21, 2024 am 11:42 AM

PHP schneidet die Datei auf die angegebene Länge ab

PHP bekommt pi PHP bekommt pi Mar 21, 2024 pm 01:52 PM

PHP bekommt pi

See all articles