Heim >Backend-Entwicklung >PHP-Problem >PHP fragt ab, ob sich bestimmte Daten im Array befinden
In der PHP-Entwicklung müssen wir oft bestimmte Vorgänge an einem Array ausführen, und eine der häufigsten Anforderungen besteht darin, abzufragen, ob sich bestimmte Daten im Array befinden. Es gibt viele Möglichkeiten, diese Anforderung zu erfüllen. Im Folgenden stellen wir einige gängige Methoden im Detail vor.
PHP stellt eine in_array()-Funktion bereit, deren Funktion darin besteht, zu bestimmen, ob ein Wert im Array vorhanden ist. Die Verwendung dieser Funktion ist:
bool in_array(mixed $needle, array $haystack [, bool $strict = false ])
wobei $needle den zu findenden Wert darstellt, $haystack das zu findende Array darstellt, $ strict gibt an, ob die Typprüfung aktiviert werden soll.
Zum Beispiel:
$example = array('a', 'b', 'c'); if (in_array('a', $example)) { echo "存在"; } else { echo "不存在"; }
Im obigen Beispiel gibt die Funktion „true“ zurück, da der Wert „a“ im Array $example vorhanden ist. Wenn wir den gesuchten Wert in „d“ ändern, gibt die Funktion „false“ zurück.
Zusätzlich zur in_array()-Funktion bietet PHP auch eine array_search()-Funktion. Die Funktion dieser Funktion besteht darin, einen Wert im Array zu finden und seinen Schlüsselnamen zurückzugeben. Wenn der Wert nicht im Array vorhanden ist, wird „false“ zurückgegeben.
Die Art und Weise, diese Funktion zu verwenden, ist:
mixed array_search(mixed $needle, array $haystack [, bool $strict = false])
Zum Beispiel:
$example = array('a' => 1, 'b' => 2, 'c' => 3); $key = array_search(2, $example); if ($key !== false) { echo '存在,对应的键名为:' . $key; } else { echo '不存在'; }
Im obigen Beispiel gibt die Funktion „exist“ zurück , entsprechend Der Schlüsselname lautet: b“, da der Wert 2 im Array vorhanden ist und der entsprechende Schlüsselname b ist. Wenn der gesuchte Wert 4 ist, gibt die Funktion false zurück.
Es ist zu beachten, dass Sie bei Verwendung der Funktion array_search() vorsichtig sein müssen, wenn der Schlüsselname 0 ist. Denn wenn der zu findende Wert 0 ist, behandelt die Funktion den Wert mit dem Schlüsselnamen 0 so, als ob er nicht existierte. Wenn Sie dieses Problem lösen möchten, können Sie die Typprüfung im dritten Parameter aktivieren.
Manchmal, wenn wir einen Wert im Array finden müssen, müssen wir auch den Schlüsselnamen kennen, der dem Wert entspricht. Zu diesem Zeitpunkt können Sie die Funktion in_array() in Kombination mit dem Namen des Array-Schlüssels zum Suchen verwenden.
Die spezifische Implementierungsmethode besteht darin, den Schlüsselnamen zum Array hinzuzufügen und dann die Funktion in_array() zum Suchen zu verwenden:
$example = array('a' => 1, 'b' => 2, 'c' => 3); if (in_array(2, $example, true)) { $key = array_search(2, $example, true); echo '存在,对应的键名为:' . $key; } else { echo '不存在'; }
Im obigen Beispiel haben wir das ursprüngliche Indexarray in ein assoziatives Array konvertiert, damit wir dies können Finden Sie den entsprechenden Wert für den Array-Schlüsselnamen.
Zusammenfassung
Die oben genannten drei Methoden können alle verwendet werden, um abzufragen, ob sich bestimmte Daten in einem Array in PHP befinden. Die spezifische Verwendung hängt von den tatsächlichen Anforderungen ab. Es ist zu beachten, dass in der tatsächlichen Entwicklung unterschiedliche Array-Strukturen auf unterschiedliche Weise verarbeitet werden können. Wenn Sie häufig Abfragevorgänge ausführen müssen, können Sie das Array außerdem in ein assoziatives Array konvertieren, was Suchvorgänge komfortabler macht.
Das obige ist der detaillierte Inhalt vonPHP fragt ab, ob sich bestimmte Daten im Array befinden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!