Heim  >  Artikel  >  Backend-Entwicklung  >  PHP prüft, ob ein bestimmter Schlüssel in einem Array vorhanden ist

PHP prüft, ob ein bestimmter Schlüssel in einem Array vorhanden ist

WBOY
WBOYOriginal
2023-05-23 09:46:37544Durchsuche

In der PHP-Entwicklung müssen wir häufig feststellen, ob ein bestimmter Schlüssel in einem Array vorhanden ist. Diese Anforderung kommt sehr häufig vor, z. B. das Abrufen des entsprechenden Werts basierend auf dem Schlüssel oder das Löschen eines bestimmten Schlüssel-Wert-Paares. In diesem Artikel erfahren Sie, wie Sie überprüfen, ob ein bestimmter Schlüssel in einem Array in PHP vorhanden ist.

Normalerweise gibt es mehrere Möglichkeiten, um zu überprüfen, ob ein Schlüssel in einem Array vorhanden ist:

  1. Verwenden Sie die Funktion array_key_exists()
array_key_exists() 函数

array_key_exists() 函数可以检查一个数组中是否存在指定的键。该函数会返回一个布尔值表示该键是否存在。例如:

$my_array = array(
    'name' => 'Tom',
    'age' => 18,
    'gender' => 'male'
);

if (array_key_exists('name', $my_array)) {
    echo '该键存在!';
} else {
    echo '该键不存在!';
}

上面的代码中,我们使用了 array_key_exists() 函数来检查数组 $my_array 是否包含键名为 'name' 的键。如果存在,输出 '该键存在!',否则输出 '该键不存在!'

  1. 使用 isset() 函数

isset() 函数可以用来检查变量是否已经设置并且非 NULL。在检查数组中的键时,isset() 函数会返回一个布尔值表示该键是否存在,如果存在且值为 NULL,则表示存在。例如:

$my_array = array(
    'name' => 'Tom',
    'age' => 18,
    'gender' => 'male'
);

if (isset($my_array['name'])) {
    echo '该键存在!';
} else {
    echo '该键不存在!';
}

上面的代码中,我们通过在数组 $my_array 后面加上键名来检查该键是否存在。如果存在,输出 '该键存在!',否则输出 '该键不存在!'

需要注意的是,使用 isset() 函数检查键的时候需要注意区分是否为 NULL 和是否存在。例如:

$my_array = array(
    'name' => 'Tom',
    'age' => null,
    'gender' => 'male'
);

if (isset($my_array['name'])) {
    echo '该键存在!';
} else {
    echo '该键不存在!';
}

if (isset($my_array['age'])) {
    echo '该键存在且不为 NULL!';
} else {
    echo '该键不存在或为 NULL!';
}

上面的代码中,我们定义了一个数组 $my_array,其中 'age' 键的值为 NULL。使用 isset() 函数检查 'name' 键时,会输出 '该键存在!',因为该键存在并且不为 NULL。而使用 isset() 函数检查 'age' 键时,会输出 '该键不存在或为 NULL!',即使该键存在,因为它的值为 NULL。

  1. 使用 array_key_exists() 与 isset() 的区别

在使用 array_key_exists()isset() 时,有一个需要注意的区别:array_key_exists() 只判断键是否存在,而 isset() 判断键是否存在且值是否为 NULL。因此,如果我们只是想判断键是否存在,可以使用 array_key_exists(),如果需要判断键是否存在且值是否为 NULL,可以使用 isset()。例如:

$my_array = array(
    'name' => 'Tom',
    'age' => null,
    'gender' => 'male'
);

if (array_key_exists('age', $my_array) && $my_array['age'] !== null) {
    echo '该键存在且不为 NULL!';
} else {
    echo '该键不存在或为 NULL!';
}

上面的代码中,我们通过使用 array_key_exists() 函数判断 'age' 键是否存在,同时判断该键的值是否为 NULL。如果键存在且不为 NULL,输出 '该键存在且不为 NULL!',否则输出 '该键不存在或为 NULL!'

总结

在 PHP 开发中,检查数组是否存在某个键是一项基本的任务。本文介绍了三种方法来检查数组中是否存在某个键:使用 array_key_exists() 函数、使用 isset() 函数以及 array_key_exists()isset()array_key_exists() Funktion prüft, ob ein angegebener Schlüssel in einem Array vorhanden ist. Diese Funktion gibt einen booleschen Wert zurück, der angibt, ob der Schlüssel vorhanden ist. Zum Beispiel:

rrreee🎜Im obigen Code verwenden wir die Funktion array_key_exists(), um zu prüfen, ob das Array $my_array den Schlüsselnamen 'name' Schlüssel. Wenn er existiert, geben Sie <code> aus: „Der Schlüssel existiert!“ ', sonst Ausgabe 'Der Schlüssel existiert nicht! '. 🎜
    🎜Verwenden Sie die Funktion isset()
🎜Mit der Funktion isset() können Sie prüfen, ob eine Variable gesetzt wurde und nicht NULL ist . Beim Überprüfen eines Schlüssels in einem Array gibt die Funktion isset() einen booleschen Wert zurück, der angibt, ob der Schlüssel existiert, oder NULL, wenn er existiert. Zum Beispiel: 🎜rrreee🎜Im obigen Code prüfen wir, ob der Schlüssel existiert, indem wir den Schlüsselnamen nach dem Array $my_array hinzufügen. Wenn er existiert, geben Sie aus: „Der Schlüssel existiert!“ ', sonst Ausgabe 'Der Schlüssel existiert nicht! '. 🎜🎜Es ist zu beachten, dass Sie bei der Verwendung der Funktion isset() zum Überprüfen des Schlüssels darauf achten müssen, zu unterscheiden, ob er NULL ist und ob er existiert. Zum Beispiel: 🎜rrreee🎜Im obigen Code definieren wir ein Array $my_array, in dem der Wert des Schlüssels 'age' NULL ist. Wenn Sie die Funktion isset() verwenden, um den Schlüssel 'name' zu überprüfen, wird 'Der Schlüssel existiert!' ausgegeben. ' weil der Schlüssel existiert und nicht NULL ist. Wenn Sie die Funktion isset() verwenden, um den Schlüssel 'age' zu überprüfen, 'der Schlüssel existiert nicht oder ist NULL! ' obwohl der Schlüssel existiert, weil sein Wert NULL ist. 🎜
    🎜Der Unterschied zwischen der Verwendung von array_key_exists() und isset()
🎜Bei der Verwendung von array_key_exists() und isset() gibt es einen Unterschied, der beachtet werden muss: <code>array_key_exists() bestimmt nur, ob der Schlüssel existiert, während isset() bestimmt, ob der Schlüssel existiert und ob der Wert ist NULL. Wenn wir also nur feststellen möchten, ob der Schlüssel existiert, können wir array_key_exists() verwenden. Wenn wir feststellen müssen, ob der Schlüssel existiert und ob der Wert NULL ist, können wir isset verwenden (). Zum Beispiel: 🎜rrreee🎜Im obigen Code verwenden wir die Funktion array_key_exists(), um zu bestimmen, ob der Schlüssel 'age' vorhanden ist und ob der Wert des Schlüssels NULL ist . Wenn der Schlüssel existiert und nicht NULL ist, geben Sie 'Der Schlüssel existiert und ist nicht NULL! ', sonst Ausgabe 'Der Schlüssel existiert nicht oder ist NULL! '. 🎜🎜Zusammenfassung🎜🎜In der PHP-Entwicklung ist die Überprüfung, ob ein bestimmter Schlüssel in einem Array vorhanden ist, eine grundlegende Aufgabe. In diesem Artikel werden drei Möglichkeiten beschrieben, um zu überprüfen, ob ein Schlüssel in einem Array vorhanden ist: mithilfe der Funktion array_key_exists(), mithilfe der Funktion isset() und array_key_exists() Der Unterschied zwischen code> und isset(). Um im Einzelfall zu prüfen, ob ein bestimmter Schlüssel vorhanden ist, müssen Sie die am besten geeignete Methode wählen. 🎜

Das obige ist der detaillierte Inhalt vonPHP prüft, ob ein bestimmter Schlüssel in einem Array vorhanden ist. 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