Heim > Artikel > Backend-Entwicklung > PHP erkennt, ob ein Array vorhanden ist
Als Entwickler müssen wir häufig Arrays verwalten und manipulieren. In PHP ist die Bestimmung, ob ein bestimmter Wert in einem Array vorhanden ist, eine häufig vorkommende Aufgabe.
In PHP gibt es mehrere Möglichkeiten zu überprüfen, ob ein Array einen bestimmten Wert enthält. In diesem Artikel werden einige häufig verwendete Methoden vorgestellt.
1. in_array()-Funktion
in_array() ist eine der integrierten Funktionen von PHP, mit der überprüft wird, ob ein Wert in einem Array vorhanden ist. Seine Syntax ist wie folgt:
bool in_array ( Mixed $needle , Array $haystack [, bool $strict = FALSE ] )
Diese Funktion hat drei Parameter, nämlich den zu findenden Wert (needle) und das zu findende Array gefunden (haystack) und ein optionaler Bool-Typparameter strict. Unter diesen müssen Nadel und Heuhaufen übergeben werden, und der Standardwert von strict ist false.
Wenn sich die zu findende Wertnadel im zu findenden Array-Heuhaufen befindet, geben Sie true zurück, andernfalls geben Sie false zurück. Hier ist ein Beispiel:
$fruits = array("apple", "banana", "orange");
if (in_array("apple", $fruits)) {
echo "找到了 apple!";
}
Im obigen Beispiel: $fruits ist ein Array, das mehrere Fruchtnamen enthält, und die Funktion in_array() prüft, ob es die Zeichenfolge „apple“ enthält. Da das Array „Apple“ enthält, lautet die Ausgabe „Apple gefunden!“.
2. Funktion array_search()
Die Funktion array_search() ähnelt in_array() und wird auch verwendet, um herauszufinden, ob sich ein Wert in einem Array befindet. Der Unterschied besteht darin, dass der gefundene Schlüsselname (Schlüssel) anstelle eines Ergebnisses vom Typ Bool zurückgegeben wird. Die Syntax lautet wie folgt:
mixed array_search ( Mixed $needle , Array $haystack [, bool $strict = false ] )
Diese Funktion hat drei Parameter, wobei Needle der zu findende Wert und Haystack das zu findende Array ist gefunden, und der strikte Parameter Es ist ein strikter Vergleich, ob der Typ aktiviert ist.
Wenn die zu findende Wertnadel im zu findenden Array-Heuhaufen vorhanden ist, geben Sie den Schlüsselnamen zurück, der dem Wert entspricht, andernfalls geben Sie false zurück. Hier ist ein Beispiel:
$casual_fruits = array("apple", "banana", "orange");
$key = array_search("banana", $casual_fruits);
if ($key) {
echo "banana 在数组中的键名是 " . $key;
}
Im obigen Beispiel enthält das Array $casual_fruits mehrere exotische Fruchtnamen. Die Funktion array_search() ermittelt, ob es den Wert „Banane“ enthält. Nachdem es gefunden wurde, gibt es „Banane im Array“ aus echo. Der Schlüsselname in ist 1".
3. Der Unterschied zwischen den Funktionen in_array() und array_search()
Obwohl die Funktionen in_array() und array_search() beide verwendet werden, um herauszufinden, ob ein Array einen bestimmten Wert enthält, sind ihre Rückgabewerte und ihre anwendbaren Szenarien unterschiedlich auch anders.
in_array() gibt einen Wert vom Typ Bool zurück, der normalerweise verwendet wird, um zu bestimmen, ob ein Wert vorhanden ist, ohne seine Position im Array zu kennen. Array_search() gibt einen Schlüsselnamen zurück, der normalerweise verwendet wird, um zu überprüfen, ob ein Wert existiert und dessen Position im Array bekannt sein muss.
Wenn Sie nur an der Existenz des Ergebnisses interessiert sind, verwenden Sie die Funktion in_array(). Wenn Sie die Position des Werts im Array ermitteln möchten, verwenden Sie die Funktion array_search().
4. Funktion array_key_exists()
Zusätzlich zur Prüfung, ob ein Wert im Array vorhanden ist, müssen wir manchmal auch prüfen, ob ein bestimmter Schlüsselname vorhanden ist. Zu diesem Zeitpunkt müssen Sie die in PHP integrierte Funktion array_key_exists() verwenden. Die Syntax lautet wie folgt:
bool array_key_exists ( gemischter $key , array $array )
Diese Funktion hat zwei Parameter, wobei der Schlüsselparameter der zu findende Schlüsselname und der Array-Parameter das zu findende Array ist.
Gibt true zurück, wenn der Schlüssel im Array vorhanden ist, andernfalls false. Hier ist ein Beispiel:
$arr = array("a" => "apple", "b" => "banana");
if (array_key_exists("a", $arr)) {
echo "键名 a 存在于该数组中。";
}
Im obigen Beispielcode haben wir ein Array erstellt, das mehrere Schlüssel-Wert-Paare enthält. Wir prüfen, ob der Schlüsselname „a“ existiert, und weil er existiert, geben wir „Der Schlüsselname a existiert in diesem Array.“ aus.
5. Funktion isset()
Anders als die Funktion array_key_exists() kann die Funktion isset() nicht nur prüfen, ob ein Schlüsselname vorhanden ist, sondern auch, ob der dem Schlüsselnamen entsprechende Wert vorhanden ist. Die Syntax lautet wie folgt:
bool isset ( Mixed $var [, Mixed $... ] )
Diese Funktion kann mehrere Parameter akzeptieren, wobei jeder Parameter eine Variable oder der Schlüsselname eines Arrays sein kann. Gibt true zurück, wenn der Parameter vorhanden ist und sein Wert nicht NULL ist, andernfalls false.
Hier ist ein Beispiel:
$arr = array("a" => "apple", "b" => "banana");
if (isset($arr["a"])) {
echo "键名 a 存在于该数组中,并且它的值是 " . $arr["a"];
}
Im obigen Beispielcode haben wir die Funktion isset() verwendet, um den Schlüsselnamen „a“ zu überprüfen. Wenn der Schlüsselname vorhanden ist, wird der dem Schlüsselnamen entsprechende Wert ausgegeben.
Zusammenfassung
Um zu überprüfen, ob ein Array einen bestimmten Wert in PHP enthält, können wir die Funktionen in_array(), array_search(), array_key_exists() und isset() verwenden. Unter diesen werden in_array() und array_search() hauptsächlich verwendet, um zu überprüfen, ob der Wert vorhanden ist, während die Funktionen array_key_exists() und isset() hauptsächlich verwendet werden, um zu überprüfen, ob der Schlüsselname vorhanden ist.
Wenn wir nur prüfen müssen, ob ein Wert in einem Array vorhanden ist, verwenden Sie die Funktion in_array(). Wenn wir den Schlüsselnamen eines Werts in einem Array benötigen, können wir array_search() verwenden. Wenn wir feststellen müssen, ob ein Schlüsselname im Array vorhanden ist, können wir die Funktion array_key_exists() verwenden. Wenn wir feststellen müssen, ob ein Schlüsselname und sein entsprechender Wert gleichzeitig vorhanden sind, können wir die Funktion isset() verwenden.
Das obige ist der detaillierte Inhalt vonPHP erkennt, ob ein Array vorhanden ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!