Heim >Backend-Entwicklung >PHP-Tutorial >isset() vs. array_key_exists(): Wann sollte ich Which in PHP verwenden?

isset() vs. array_key_exists(): Wann sollte ich Which in PHP verwenden?

DDD
DDDOriginal
2024-12-08 14:18:11610Durchsuche

isset() vs. array_key_exists(): When Should I Use Which in PHP?

Unterschiede zwischen isset() und array_key_exists()

Bei der Programmierung ist es oft wichtig zu prüfen, ob ein bestimmter Schlüssel in einem Array vorhanden ist . In PHP kann dies entweder mit den Funktionen isset() oder array_key_exists() erreicht werden. Lassen Sie uns die Hauptunterschiede zwischen diesen beiden Funktionen untersuchen.

Überprüfung der Schlüsselexistenz

Sowohl isset() als auch array_key_exists() überprüfen, ob ein Schlüssel in einem Array vorhanden ist. Sie unterscheiden sich jedoch in ihren Kriterien.

  • array_key_exists(): Prüft nur das Vorhandensein des Schlüssels, unabhängig von seinem Wert oder Typ.
  • isset(): Überprüft nicht nur das Vorhandensein des Schlüssels, sondern stellt auch sicher, dass der entsprechende Wert nicht vorhanden ist null.

Zum Beispiel:

$a = ['key1' => 'foo', 'key2' => null];

array_key_exists('key1', $a); // true
array_key_exists('key2', $a); // true

isset($a['key1']); // true
isset($a['key2']); // false

Array-Existenzüberprüfung

Ein weiterer wichtiger Unterschied besteht darin, dass isset() kein generiert Fehler, wenn das Array selbst nicht existiert. Im Gegensatz dazu tut array_key_exists() dies.

Zum Beispiel:

isset($b); // No error
array_key_exists('key', $b); // Error: Undefined variable

Leistung

isset() ist im Allgemeinen schneller als array_key_exists(), weil Es wird keine Array-Bereichsprüfung durchgeführt.

Verwendung Szenarien

  • Verwenden Sie array_key_exists(), wenn Sie die Existenz eines Schlüssels unabhängig von seinem Wert überprüfen müssen.
  • Verwenden Sie isset(), wenn Sie nach dem suchen möchten Überprüfen Sie das Vorhandensein eines Schlüssels und stellen Sie sicher, dass sein Wert nicht null ist.

Letztendlich hängt die Auswahl der zu verwendenden Funktion von der jeweiligen Situation ab Anforderungen Ihrer Bewerbung.

Das obige ist der detaillierte Inhalt vonisset() vs. array_key_exists(): Wann sollte ich Which in PHP verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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