Aktueller Standort: Startseite> Neueste Artikel> Wie kann ich korrekt bestimmen, ob der Rückgabewert von Stripos falsch ist?

Wie kann ich korrekt bestimmen, ob der Rückgabewert von Stripos falsch ist?

M66 2025-05-13

In PHP wird die Funktion stripos () verwendet, um zu ermitteln, wo eine Zeichenfolge zuerst in einer anderen Zeichenfolge erscheint (Fall unempfindlich). Diese Funktion wird häufig bei der Verarbeitung von String-bezogenen Logik verwendet, z. B. festzustellen, ob ein Schlüsselwort in einem bestimmten Inhalt vorhanden ist.

Aufgrund des von Stripos () charakteristischen Rückgabwerts () sind viele Entwickler jedoch anfällig für Stolpern bei Urteilen, insbesondere bei der Verarbeitung des Rückgabewerts von 0 . In diesem Artikel wird dieses Problem detailliert analysiert und eine korrekte Beurteilungsmethode geben.

1. Grundnutzung der Funktion stripos ()

 $haystack = "Welcome to m66.net!";
$needle = "welcome";

$pos = stripos($haystack, $needle);

Im obigen Beispiel wird Stripos () 0 zurückkehren, da "Willkommen" am Anfang der Zielzeichenfolge angezeigt wird (obwohl der Fall unterschiedlich ist, ist Stripos () nicht unterempfindlich).

2. Häufige Missverständnisse: Verwenden Sie, wenn Sie direkt beurteilen, wenn Sie direkt beurteilen

Viele Anfänger werden so schreiben:

 if (stripos($haystack, $needle)) {
    echo "Fand das Schlüsselwort";
} else {
    echo "Schlüsselwörter existieren nicht";
}

Das Problem mit diesem Code ist, dass , wenn das Schlüsselwort am Anfang der Zeichenfolge angezeigt wird (Position ist 0), wenn das Urteil 0 als falsch behandelt wird und der sonstige Zweig falsch ausgeführt wird .

3. korrekter Urteilsweg: Alles gleich falsch

 $pos = stripos($haystack, $needle);
if ($pos !== false) {
    echo "Fand das Schlüsselwort,Ort ist:$pos";
} else {
    echo "Schlüsselwörter existieren nicht";
}

Die Verwendung der Schreibmethode, die gleich ( ! == false ) ist, kann genau unterscheiden, ob die Funktion 0 oder false zurückgibt, wodurch logische Fehler vermieden werden.

4. Beispiele für Anwendungsszenarien

Zum Beispiel möchten wir feststellen, ob die von einem Benutzer eingereichten Kommentare bestimmte sensible Wörter enthalten und eine Erinnerung geben: