PHP: Hypertext Preprocessor (original) (raw)

mb_strrpos

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_strrpos — Find position of last occurrence of a string in a string

Description

Parameters

haystack

The string being checked, for the last occurrence of needle

needle

The string to find in haystack.

offset

May be specified to begin searching an arbitrary number of characters into the string. Negative values will stop searching at an arbitrary point prior to the end of the string.

encoding

The encodingparameter is the character encoding. If it is omitted or [null](reserved.constants.php#constant.null), the internal character encoding value will be used.

Return Values

Returns the numeric position of the last occurrence of needle in thehaystack string. Ifneedle is not found, it returns [false](reserved.constants.php#constant.false).

Changelog

Version Description
8.0.0 needle now accepts an empty string.
8.0.0 Passing the encoding as the third argument instead of an offset has been removed.
8.0.0 encoding is nullable now.

See Also

Found A Problem?

Anonymous

19 years ago

`mb_strrpos throws a warning if $haystack is empty.
strrpos simply returns FALSE.

This is something to be wary of if overloading the mb functions.

`

Anonymous

10 years ago

"Negative values will stop searching at an arbitrary point prior to the end of the string. " ist misleading. The needle may not fully part of searchrange, defined by a negative offset. A negative offsets marks the last byte, where a search could start. <?php $test = "Hallo, Herr Gött"; var_dump(strlen($test)); // int(17) var_dump(mb_strrpos($test,'ött',13)); // int(13) var_dump(mb_strrpos($test,'ött',-4)); // int(13) 17-4 = 13 var_dump(mb_strrpos($test,'ött',-5)); // bool(false) ?>