Forum und email

strpos

(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() vor PHP 5 akzeptiert diese Funktion eine komplette Zeichenkette als needle -Parameter und verwendet den gesamten String zur Suche.

Parameter Liste

haystack

needle

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

offset

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 .

Rückgabewerte

Gibt die Position als Integerwert zurück. 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.

Beispiele

Example#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 String '$findMich' wurde nicht im String '$meinString' gefunden";
} else {
    echo 
"Der String '$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
?>

Anmerkungen

Hinweis: Diese Funktion ist binary safe.