suchen
HeimBackend-EntwicklungPHP-TutorialSo verwenden Sie die Rückruffunktion zum Vergleichen von Schlüsselnamen, um die Schnittmenge von Arrays in PHP zu berechnen

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)

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

?>
Ausgabe:

Array
(
[apple] => green
[banana] => green
)

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

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

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

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!

Stellungnahme
Dieser Artikel ist reproduziert unter:编程网. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
PHP -Leistungsstimmung für Websites mit hohem VerkehrPHP -Leistungsstimmung für Websites mit hohem VerkehrMay 14, 2025 am 12:13 AM

Thesecrettokeepingaphp-betriebene WebsiterunningSmoothyunderheavyLoadInvolvesseveralkeyStrategies: 1) ImplementoPCodeCachingWithopcachetoreducescholexexexcutiontime, 2) verwendetatabasequerycachingwithredolesendatabaSelaDaLoadaLoadaLoadaLoad, 3) LeveragecdnslikecloudLesendatabaselaSelaSelaSelaSelaSelaSelaSelaSelaSelaSeladinaSelaSelaSelaSelaSeladinaSelaSeladin

Abhängigkeitsinjektion in PHP: Code Beispiele für AnfängerAbhängigkeitsinjektion in PHP: Code Beispiele für AnfängerMay 14, 2025 am 12:08 AM

Sie sollten sich um die Abhängigkeitsinjektion (DI) kümmern, da Ihr Code klarer und leichter zu warten ist. 1) DI macht es modularer durch Entkopplung von Klassen, 2) verbessert die Bequemlichkeit von Tests und Code -Flexibilität, 3) DI -Container verwenden, um komplexe Abhängigkeiten zu verwalten, aber auf die Auswirkungen auf die Leistung und die kreisförmigen Abhängigkeiten zu achten, 4) Die beste Praxis besteht darin, sich auf abstrakte Schnittstellen zu verlassen, um lose Koupleln zu erreichen.

PHP -Leistung: Ist es möglich, die Anwendung zu optimieren?PHP -Leistung: Ist es möglich, die Anwendung zu optimieren?May 14, 2025 am 12:04 AM

Ja, optimizingaphpapplicationSispossiblandinential.1) ImplementCachingusedapcutoredatabaSeload.2) optimizedatabases-withindexing, effizienteQuerien und AnconnectionPooling.3) EnhanceCodewithbuilt-Infunktionen, Vermeidung von Globalvariablungen und UsusepcodeCodeCecess

PHP -Leistungsoptimierung: Der ultimative LeitfadenPHP -Leistungsoptimierung: Der ultimative LeitfadenMay 14, 2025 am 12:02 AM

TheKeyStrategieS significantBoostPhpapplicationPlicationperformanceare: 1) UseOpCodeCaching-likeopcachetoreduceExecutiontime, 2) optimizedatabaseInteractionswithprepararedStatements undProperIndexing, 3) configureWebserverSLIKENGINXWITHPHP-FPMFRMFRETBETTERPERSPRIGUNG, 4), 4), 4), 4), 4))

PHP -Abhängigkeitsinjektionsbehälter: Ein schneller StartPHP -Abhängigkeitsinjektionsbehälter: Ein schneller StartMay 13, 2025 am 12:11 AM

APHPDependencyInjectionContainerisatoolthatmanagesClass -Abhängigkeiten, EnhancingCodemodularität, Testbarkeit und Maschinenbarkeit.

Abhängigkeitsinjektion im Vergleich zum Service -Locator in PHPAbhängigkeitsinjektion im Vergleich zum Service -Locator in PHPMay 13, 2025 am 12:10 AM

Wählen Sie die Abhängigkeitsinjektion (DI) für große Anwendungen. Der Servicelocator ist für kleine Projekte oder Prototypen geeignet. 1) DI verbessert die Testbarkeit und Modularität des Codes durch Konstruktorinjektion. 2) Servicelocator erhält Dienstleistungen durch die Zentrumregistrierung, was bequem ist, aber zu einer Erhöhung der Codekupplung führen kann.

PHP -Leistungsoptimierungsstrategien.PHP -Leistungsoptimierungsstrategien.May 13, 2025 am 12:06 AM

PhpapplicationscanbeoptimizedforspeedandefficiencyBy: 1) EnabgingOpcacheinphp.ini, 2) usePreparedStatementsWithpdoFordatabasequeries, 3) Ersatzloopswitharray_Filterandarray_mapfordataprozessing, 4) Konfigurieren von), 4), implementieren, 5)

PHP -E -Mail -Validierung: Stellen Sie sicher, dass E -Mails korrekt gesendet werdenPHP -E -Mail -Validierung: Stellen Sie sicher, dass E -Mails korrekt gesendet werdenMay 13, 2025 am 12:06 AM

PhpemailvalidationInvolvesthreesteps: 1) Formatvalidationusing -RegularexpressionStocheckTheemailformat; 2) DnsvalidationToensurethedomainhasavalidmxRecord;

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Nordhold: Fusionssystem, erklärt
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Sicherer Prüfungsbrowser

Sicherer Prüfungsbrowser

Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.

SublimeText3 Englische Version

SublimeText3 Englische Version

Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

PHPStorm Mac-Version

PHPStorm Mac-Version

Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool