(PHP 5, PHP 7, PHP 8)
strripos — Findet das letzte Vorkommen der gesuchten Zeichenkette in einem String, unabhängig von Groß- und Kleinschreibung
Findet das letzte Vorkommen von needle im String
haystack.
Im Gegensatz zu strrpos() beachtet strripos() die Groß- und Kleinschreibung nicht.
haystackDie Zeichenkette, in der gesucht werden soll.
needleDie Zeichenkette, nach der gesucht werden soll.
Wenn der Parameter needle keine Zeichenkette ist,
wird er vor PHP 8.0.0 in eine Ganzzahl umgewandelt und als ordinaler Wert
eines Zeichens betrachtet. Dieses Verhalten gilt seit PHP 7.3.0 als veraltet
und es wird dringend empfohlen, sich nicht darauf zu verlassen. Ist das
Verhalten gewünscht, so sollte needle explizit in
eine Zeichenkette umgewandelt werden oder explizit die Funktion
chr() aufgerufen werden.
offset
Wenn null (0) oder positiv, wird die Suche von links
nach rechts durchgeführt, wobei die ersten
offset Bytes des haystack
übersprungen werden.
Wenn negativ, wird die Suche von rechts nach links durchgeführt, wobei
die letzten offset Bytes des
haystack übersprungen werden.
Hinweis:
Dies bedeutet, dass das letzte Vorkommen von
needlevor den letztenoffsetBytes gesucht wird.
Gibt die Position zurück, an der needle relativ zum
Anfang der Zeichenkette haystack vorkommt
(unabhängig von Suchrichtung oder Offset).
Hinweis: Positionen in Zeichenketten werden ab 0 gezählt, und nicht ab 1.
Wenn needle nicht gefunden wird, gibt die Funktion
false zurück.
Diese Funktion kann sowohl das
boolsche false zurückliefern, als auch einen nicht-boolschen Wert, welcher zu false ausgewertet wird.
Weitere Informationen entnehmen Sie bitte dem Abschnitt über die
boolschen Typen. Benutzen Sie deshalb
den === Operator,
um den Rückgabewert dieser Funktion zu überprüfen.
| Version | Beschreibung |
|---|---|
| 8.2.0 | Die Groß- und Kleinschreibung hängt nicht mehr von der mit setlocale() eingestellten Locale ab. Es wird nur noch die Groß- und Kleinschreibung von ASCII-Bytes verglichen. Nicht-ASCII-Bytes werden nach ihrem Byte-Wert verglichen. |
| 8.0.0 |
needle akzeptiert nun eine leere Zeichenkette.
|
| 8.0.0 |
Die Übergabe eines Integer als needle wird
nicht mehr unterstützt.
|
| 7.3.0 |
Die Übergabe eines Integer als needle wird
missbilligt.
|
Beispiel #1 Ein einfaches strripos()-Beispiel
<?php
$haystack = 'ababcd';
$needle = 'aB';
$pos = strripos($haystack, $needle);
if ($pos === false) {
echo "Leider wurde ($needle) nicht in ($haystack) gefunden.";
} else {
echo "Glückwunsch!\n";
echo "Das letzte Vorkommen von ($needle) in ($haystack) ist an Position ($pos).";
}
?>Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Glückwunsch! Das letzte Vorkommen von (aB) in (ababcd) ist an Position (2).