Heim  >  Artikel  >  Backend-Entwicklung  >  So ermitteln Sie, ob ein Array in einer Zeichenfolge in PHP vorhanden ist

So ermitteln Sie, ob ein Array in einer Zeichenfolge in PHP vorhanden ist

PHPz
PHPzOriginal
2023-04-18 10:20:191314Durchsuche

In PHP ist die Feststellung, ob ein Array in einem String vorhanden ist, ein relativ häufiges Problem. PHP bietet eine Vielzahl von Methoden zum Erreichen dieser Funktion. In diesem Artikel werden einige der gebräuchlichsten Methoden vorgestellt.

Methode 1: Verwenden Sie die Funktion in_array

Die Funktion in_array ist eine sehr häufig verwendete Funktion in PHP, mit der ermittelt wird, ob sich ein Wert in einem Array befindet. Wir können die Zeichenfolge in ein Array konvertieren und dann mithilfe der Funktion in_array feststellen, ob das gesuchte Array im Array vorhanden ist. Der Beispielcode lautet wie folgt:

$str = 'apple,banana,pear';
$arr = explode(',', $str);
if (in_array('banana', $arr)) {
    echo '存在';
} else {
    echo '不存在';
}

Codebeschreibung:

Zuerst definieren wir eine String-Variable $str, die drei durch Kommas getrennte Fruchtnamen enthält. Teilen Sie dann die $str-Zeichenfolge mithilfe der Explosionsfunktion in das Array $arr auf. Verwenden Sie abschließend die Funktion in_array, um festzustellen, ob das Element „Banane“ im Array $arr vorhanden ist. Wenn es existiert, wird „exists“ ausgegeben, andernfalls wird „does not exist“ ausgegeben.

Methode 2: Strpos- und Explosionsfunktionen verwenden

Eine andere Methode ist die Verwendung von Strpos- und Explosionsfunktionen. Mit der Funktion strpos wird nach der Position eines bestimmten Teilstrings in einem String gesucht. Wenn dieser gefunden wird, wird ein ganzzahliger Wert zurückgegeben, andernfalls wird false zurückgegeben. Wir können die Zeichenfolge $str mit Kommas als Trennzeichen aufteilen und dann mithilfe der Funktion strpos ermitteln, ob sich das zu findende Element im zurückgegebenen Array befindet. Der Beispielcode lautet wie folgt:

$str = 'apple,banana,pear';
if (strpos($str, 'banana') !== false) {
    echo '存在';
} else {
    echo '不存在';
}

Codebeschreibung:

Zuerst definieren wir eine String-Variable $str, die drei durch Kommas getrennte Fruchtnamen enthält. Verwenden Sie dann die Funktion strpos, um die Position von „Banane“ in $str zu ermitteln. Wenn sie gefunden wird, wird die Position zurückgegeben, andernfalls wird „false“ zurückgegeben. Schließlich muss „!==" verwendet werden, um einen bedingten Ausdruck zu beurteilen, da die strpos-Funktion möglicherweise 0 zurückgibt, was zwar falsch, aber sinnvoll ist. Wenn Sie „!=" verwenden, wird es mit „false“ zu „true“.

Methode 3: Verwenden Sie reguläre Ausdrücke

Wenn Sie mit regulären Ausdrücken vertraut sind und bestimmte Leistungsanforderungen haben, ist die Verwendung regulärer Ausdrücke zur Bestimmung, ob ein Array in einer Zeichenfolge vorhanden ist, eine gute Wahl. Wir können das Array, das wir finden müssen, in einen regulären Ausdruck umwandeln und dann die Funktion preg_match zum Abgleichen verwenden. Wenn die Übereinstimmung erfolgreich ist, wird „true“ zurückgegeben, andernfalls wird „false“ zurückgegeben. Der Beispielcode lautet wie folgt:

$str = 'apple,banana,pear';
if (preg_match('/banana/', $str)) {
    echo '存在';
} else {
    echo '不存在';
}

Codebeschreibung:

Definieren Sie zunächst die Zeichenfolgenvariable $str und ermitteln Sie dann mit der Funktion preg_match, ob die Zeichenfolge „Banane“ in der Variablen $str vorhanden ist. Wenn es existiert, wird „existiert“ ausgegeben, andernfalls wird „existiert nicht“ ausgegeben.

Zusammenfassung

Dieser Artikel stellt vor, wie man in PHP ermittelt, ob ein Array in einem String vorhanden ist, einschließlich drei gängiger Methoden. Die zu wählende spezifische Methode hängt von der tatsächlichen Situation ab. Im Allgemeinen weisen die Funktionen „in_array“, „strpos“ und „explosive“ eine bessere Leistung und Lesbarkeit auf, während reguläre Ausdrücke besser für die Verwendung in erweiterten Programmen geeignet sind.

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