strpos

(PHP 3, PHP 4, PHP 5)

strpos --  Sucht das erste Vorkommen des Suchstrings

Beschreibung

int strpos ( string haystack, mixed needle [, int offset] )

Gibt die numerische Position des ersten Vorkommens von needle innerhalb der Zeichenkette haystack zurück. Anders als strrpos() akzeptiert diese Funktion eine komplette Zeichenkette als needle-Parameter und verwendet den gesamten String zur Suche.

Wurde needle nicht gefunden, gibt strpos() den boolean-Wert FALSE zurück.

Warnung

Diese Funktion kann sowohl das Boolsche FALSE zurückliefern, als auch einen nicht-Boolschen Wert, wie zum Beispiel0 oder "". der von einem einfachen if-Statement als FALSE ausgewertet wird. Weitere Informationen entnehmen Sie bitte dem Abschnitt über die Boolsche Typen. Benutzen Sie deshalb den === Operator um den Rückgabewert dieser Funktion zu überprüfen.

Anmerkung: Diese Funktion ist binary safe.

Beispiel 1. strpos()-Beispiel:

<?php
$meinString
= 'abc';
$findMich   = 'a';
$pos = strpos($meinString, $findMich);

// Beachten Sie die Verwendung von ===. Ein einfacher Vergleich (==) liefert
// nicht das erwartete Ergebnis, da die Position von 'a' die nullte Stelle
// (also das erste Zeichen) ist
if ($pos === false) {
    echo
"Der Stringg '$findMich' wurde nicht im String '$meinString' gefunden";
} else {
    echo
"Der Stringg '$findMich' wurde im String '$meinString' gefunden";
    echo
" und steht an Stelle $pos";
}

// Wir koennen nach einem Zeichen suchen und dabei alles vor dem Offset ignorieren
$newstring = 'abcdef abcdef';
$pos = strpos($newstring, 'a', 1); // $pos = 7, nicht 0
?>

Ist needle kein String, wird der Parameter in einen Integerwert konvertiert, der dem Ordinalwert des Zeichens entspricht.

Der optionale Parameter offset ermöglicht es Ihnen, die Startposition für die Suche innerhalb von haystack anzugeben. Die zurück gegebene Positions-Angabe ist dann relativ zum Anfang von haystack.

Siehe auch strrpos(), stripos(), strripos(), strrchr(), substr(), stristr() und strstr().