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

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

PHPz
PHPzOriginal
2023-04-23 09:17:13580Durchsuche

Die Feststellung, ob eine Zeichenfolge bereits in einem Array vorhanden ist, ist in PHP ein häufiges Problem. Bei der tatsächlichen Entwicklung muss möglicherweise festgestellt werden, ob eine Zeichenfolge in einem Array gespeichert wurde, um eine Duplizierung von Daten zu vermeiden.

In diesem Artikel erfahren Sie, wie Sie feststellen können, ob eine Zeichenfolge bereits in einem Array in PHP vorhanden ist.

  1. Verwenden Sie die Funktion in_array()

PHP stellt eine Funktion in_array() zur Verfügung, mit der ermittelt werden kann, ob ein angegebener Wert bereits in einem Array vorhanden ist.

Der Funktionsprototyp lautet wie folgt:

in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] ) : bool

Unter diesen ist der Parameter $needle der zu findende Wert, der Parameter $haystack das zu durchsuchende Array und der Parameter $strict gibt an, ob der strikte Modus In verwendet werden soll Strikter Modus, zusätzlich zum Abgleichen von Typen, Um den Wert abzugleichen.

Das Folgende ist ein Beispiel für die Verwendung der Funktion in_array():

<?php

$arr = array("apple", "banana", "orange");

if (in_array("apple", $arr)) {
    echo "字符串存在于数组中";
} else {
    echo "字符串不存在于数组中";
}

?>

Im obigen Beispiel ist $arr ein Array, das die drei Zeichenfolgen „Apple“, „Banane“ und „Orange“ enthält. Wir verwenden die Funktion in_array(), um zu ermitteln, ob sich die Zeichenfolge „apple“ im Array $arr befindet. Wenn sie existiert, wird „die Zeichenfolge existiert im Array“ ausgegeben, andernfalls wird „die Zeichenfolge existiert nicht im Array“ ausgegeben Array".

  1. Verwenden Sie die Funktion array_search()

PHP bietet auch eine Funktion array_search(), mit der nach einem bestimmten Wert im Array gesucht und der entsprechende Schlüsselname zurückgegeben wird.

Der Funktionsprototyp lautet wie folgt:

array_search ( mixed $needle , array $haystack [, bool $strict = false ] ) : mixed

Unter diesen ist der Parameter $needle der zu findende Wert, der Parameter $haystack das zu durchsuchende Array und der Parameter $strict gibt an, ob der strikte Modus In verwendet werden soll Strikter Modus, zusätzlich zum Abgleichen von Typen, Um den Wert abzugleichen.

Das Folgende ist ein Beispiel für die Verwendung der Funktion array_search():

<?php

$arr = array("apple", "banana", "orange");

if (array_search("apple", $arr) !== false) {
    echo "字符串存在于数组中";
} else {
    echo "字符串不存在于数组中";
}

?>

Im obigen Beispiel ist $arr ein Array, das die drei Zeichenfolgen „Apfel“, „Banane“ und „Orange“ enthält. Wir verwenden die Funktion array_search(), um festzustellen, ob die Zeichenfolge „apple“ im Array $arr vorhanden ist. Wenn sie vorhanden ist, wird „Die Zeichenfolge existiert im Array“ ausgegeben, andernfalls wird „Die Zeichenfolge existiert nicht im Array“ ausgegeben Array". Es ist zu beachten, dass wir für einen strengen Vergleich den Operator !== verwenden müssen, da die Funktion array_search() möglicherweise 0 zurückgibt.

  1. Verwenden Sie die Funktionen in_array() und array_map().

Zusätzlich zur Funktion in_array() und array_search() können Sie auch die Funktionen in_array() und array_map() verwenden, um festzustellen, ob die Zeichenfolge bereits in vorhanden ist das Array.

<?php

$arr = array("apple", "banana", "orange");

function exists_in_array($str, $arr) {
    return in_array($str, $arr);
}

if (in_array("apple", array_map("exists_in_array", "apple", $arr))) {
    echo "字符串存在于数组中";
} else {
    echo "字符串不存在于数组中";
}

?>

Im obigen Beispiel haben wir eine Funktion namens exist_in_array() definiert. Die Funktion der Funktion besteht darin, zu bestimmen, ob eine Zeichenfolge bereits im angegebenen Array vorhanden ist. Anschließend verwenden wir die Funktion array_map(), um jedes Element im Array $arr als zweites Argument an die Funktion exist_in_array() zu übergeben, und übergeben das Zeichen „apple“ als erstes Argument an die Funktion exist_in_array(). Abschließend übergeben wir das zurückgegebene Ergebnis an die Funktion in_array(), um festzustellen, ob sich der String „apple“ im Array $arr befindet. Wenn er existiert, wird „Der String existiert im Array“ ausgegeben, andernfalls wird „Der String existiert“ ausgegeben nicht im Array vorhanden. „Mitte“.

Fazit

In diesem Artikel werden drei Methoden in PHP vorgestellt, mit denen Sie mithilfe der Funktion in_array(), der Funktion array_search(), der Funktion in_array() und einer Kombination aus array_map() ermitteln können, ob eine Zeichenfolge bereits in einem Array vorhanden ist. Funktion. Mit diesen Methoden können Datenduplizierungen effektiv vermieden und die Programmleistung verbessert werden.

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