Heim >Backend-Entwicklung >PHP-Problem >So ermitteln Sie, ob eine Zeichenfolge in einem Array in PHP vorhanden ist

So ermitteln Sie, ob eine Zeichenfolge in einem Array in PHP vorhanden ist

PHPz
PHPzOriginal
2023-04-26 14:22:49812Durchsuche

In PHP müssen wir manchmal feststellen, ob eine Zeichenfolge in einem Array vorhanden ist. Diese Situation kommt bei der Programmierung sehr häufig vor. Beispielsweise müssen wir feststellen, ob der vom Benutzer eingegebene Inhalt ein bestimmtes Schlüsselwort ist, oder wir müssen prüfen, ob ein Dateiname eine bestimmte Dateierweiterung usw. enthält. Wann immer wir eine bestimmte Zeichenfolge in einem großen Array finden müssen, müssen wir schnell und zuverlässig feststellen können, ob die Zeichenfolge im Array vorhanden ist.

PHP bietet mehrere Methoden, um festzustellen, ob eine Zeichenfolge in einem Array vorhanden ist. Hier sind einige davon:

1. Verwendung der Funktion in_array()

Die Funktion in_array() ist eine Funktion in 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 ] )

wobei $needle der zu findende Wert ist, $haystack das zu findende Array ist und $strict ist ein optionaler Parameter, der angibt, ob ein strenger Vergleich durchgeführt werden soll. Wenn das Argument $strict TRUE ist, berücksichtigt die Funktion in_array() den Typ bei der Suche, andernfalls nicht.

Hier ist ein einfaches Beispiel für die Verwendung der Funktion in_array(), um festzustellen, ob eine Zeichenfolge in einem Array vorhanden ist:

$keywords = array("PHP", "MySQL", "HTML", "CSS");
$ searchTerm = "MySQL";
if (in_array($searchTerm, $keywords)) {

echo "字符串$searchTerm存在于数组中";

} else {

echo "字符串$searchTerm不存在于数组中";

}

Im obigen Beispiel definieren wir zunächst ein Array $keywords und kombinieren mehrere Elemente, zu denen es hinzugefügt wird Es. Dann definieren wir die Zeichenfolge, nach der wir suchen möchten, $searchTerm. Als nächstes verwenden wir die Funktion in_array(), um zu prüfen, ob $searchTerm im Array $keywords vorhanden ist. Wenn $searchTerm im Array $keywords vorhanden ist, wird die Zeichenfolge „$searchTerm existiert im Array“ ausgegeben, andernfalls wird die Zeichenfolge „$searchTerm existiert nicht im Array“ ausgegeben.

2. Verwenden Sie die Funktion array_search().

Die Funktion array_search() ist eine weitere Funktion in PHP, die verwendet wird, um die Position eines bestimmten Werts in einem Array zu finden. Seine Syntax lautet wie folgt:

mixed array_search ( Mixed $needle , array $haystack [, bool $strict = FALSE ] )

wobei $needle der zu suchende Wert ist, $haystack das Array ist, in dem gesucht werden soll, und $strict ist ein optionaler Parameter, der angibt, ob ein strenger Vergleich durchgeführt werden soll. Wenn das Argument $strict TRUE ist, berücksichtigt die Funktion in_array() den Typ bei der Suche, andernfalls nicht.

Hier ist ein einfaches Beispiel für die Verwendung der Funktion array_search(), um festzustellen, ob eine Zeichenfolge in einem Array vorhanden ist:

$keywords = array("PHP", "MySQL", "HTML", "CSS");
$ searchTerm = "MySQL";
$searchResult = array_search($searchTerm, $keywords);
if ($searchResult !== false) {

echo "字符串$searchTerm存在于数组中,在位置$searchResult";

} else {

echo "字符串$searchTerm不存在于数组中";

}

Im obigen Beispiel haben wir zuerst An Array $keywords und der zu findende String $searchTerm werden definiert. Anschließend verwenden wir die Funktion array_search(), um die Position von $searchTerm im Array $keywords zu finden. Wenn $searchTerm im Array $keywords vorhanden ist, enthält die Variable $searchResult ihre Position und die Zeichenfolge „$searchTerm existiert im Array an Position $searchResult“ wird ausgegeben. Andernfalls wird die Zeichenfolge „$searchTerm existiert nicht im Array“ ausgegeben.

3. Verwenden Sie die Funktionen in_array() und array_keys()

Eine andere Möglichkeit, eine bestimmte Zeichenfolge in einem Array zu finden, ist die Verwendung einer Kombination der Funktionen in_array() und array_keys(). Diese Methode verwendet zunächst die Funktion in_array(), um zu prüfen, ob die Zeichenfolge im Array vorhanden ist. Ist dies der Fall, verwendet sie dann die Funktion array_keys(), um alle ihre Positionen abzurufen.

Das Folgende ist ein einfaches Beispiel, bei dem die Funktionen in_array() und array_keys() verwendet werden, um festzustellen, ob eine Zeichenfolge in einem Array vorhanden ist:

$keywords = array("PHP", "MySQL", "HTML", "CSS" , "PHP");
$searchTerm = "PHP";
if (in_array($searchTerm, $keywords)) {

$positions = array_keys($keywords, $searchTerm);
echo "字符串$searchTerm出现在数组中的位置:" . implode(",", $positions);

} else {

echo "字符串$searchTerm不存在于数组中";

}

Im obigen Beispiel haben wir ein Array von bereitgestellt mehrere Elemente $keywords. Anschließend definieren wir die Zeichenfolge, die wir finden möchten, $searchTerm und verwenden die Funktion in_array(), um zu prüfen, ob die Zeichenfolge im Array $keywords vorhanden ist. Wenn $searchTerm im Array $keywords vorhanden ist, verwenden wir die Funktion array_keys(), um die Positionen aller $searchTerms im Array abzurufen, und verwenden die Funktion implode(), um sie als durch Kommas getrennte Zeichenfolge auszugeben. Andernfalls wird die Zeichenfolge „$searchTerm existiert nicht im Array“ ausgegeben.

Zusammenfassung

In PHP gibt es mehrere Möglichkeiten, festzustellen, ob eine Zeichenfolge in einem Array vorhanden ist. Das Schreiben von Code mit einer dieser Methoden sollte schnell und zuverlässig sein. Mit der Funktion in_array() können Sie direkt prüfen, ob ein String in einem Array vorhanden ist. Mit der Funktion array_search() können Sie die Position eines Strings in einem Array ermitteln. Wenn Sie schließlich die Position aller spezifischen Zeichenfolgen in einem Array ermitteln müssen, können Sie die Funktionen in_array() und array_keys() kombinieren.

Das obige ist der detaillierte Inhalt vonSo ermitteln Sie, ob eine Zeichenfolge in einem Array in PHP 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