So ermitteln Sie die Existenz von Elementen in einem Array, um Fehler zu vermeiden

Linda Hamilton
Freigeben: 2024-10-19 06:20:02
Original
517 Leute haben es durchsucht

How to Determine the Existence of Elements in an Array to Avoid Errors

Bestimmen der Existenz von Array-Elementen

Bei der Prüfung auf die Anwesenheit eines Elements innerhalb eines Arrays kann der von Ihnen beschriebene Ansatz zu Undefiniert führen Indexfehler. Um dieses Problem effektiv zu lösen, können Sie entweder das isset-Konstrukt oder die Funktion array_key_exists verwenden.

Die Verwendung von isset

isset ist die bevorzugte Option zur Geschwindigkeitsoptimierung. Es prüft die Existenz eines Elements, unabhängig von seinem Wert. Für Elemente, die explizit auf NULL gesetzt wurden, wird jedoch „false“ zurückgegeben.

Mit array_key_exists

array_key_exists wird ermittelt, ob ein bestimmter Schlüssel innerhalb eines Arrays vorhanden ist. Im Gegensatz zu isset wird der mit dem Schlüssel verknüpfte Wert nicht berücksichtigt.

Beispiel:

Betrachten Sie das folgende Array:

<code class="php">$a = array(
    123 => 'glop',
    456 => null,
);</code>
Nach dem Login kopieren

Test mit isset:

<code class="php">var_dump(isset($a[123])); // true (key exists with a non-null value)
var_dump(isset($a[456])); // false (key exists with a null value)
var_dump(isset($a[789])); // false (key does not exist)</code>
Nach dem Login kopieren

Test mit array_key_exists:

<code class="php">var_dump(array_key_exists(123, $a)); // true (key exists regardless of value)
var_dump(array_key_exists(456, $a)); // true (key exists regardless of value)
var_dump(array_key_exists(789, $a)); // false (key does not exist)</code>
Nach dem Login kopieren

Code-Update:

In Ihrem Code können Sie isset verwenden, um den Scheck neu zu schreiben:

<code class="php">if (!isset(self::$instances[$instanceKey])) {
    $instances[$instanceKey] = $theInstance;
}</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie die Existenz von Elementen in einem Array, um Fehler zu vermeiden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!