(PHP 4, PHP 5, PHP 7, PHP 8)
strrchr — Find the last occurrence of a character in a string
This function returns the portion of haystack
which
starts at the last occurrence of needle
and goes
until the end of haystack
.
haystack
The string to search in
needle
If needle
contains more than one character,
only the first is used. This behavior is different from that of
strstr().
Prior to PHP 8.0.0, if needle
is not a string, it is converted
to an integer and applied as the ordinal value of a character.
This behavior is deprecated as of PHP 7.3.0, and relying on it is highly
discouraged. Depending on the intended behavior, the
needle
should either be explicitly cast to string,
or an explicit call to chr() should be performed.
before_needle
If true
, strrchr()
returns the part of the haystack
before the
last occurrence of the needle
(excluding the needle).
This function returns the portion of string, or false
if
needle
is not found.
Version | Description |
---|---|
8.3.0 |
The before_needle parameter was added.
|
8.0.0 |
needle now accepts an empty string.
|
8.0.0 |
Passing an int as needle is no longer supported.
|
7.3.0 |
Passing an int as needle has been deprecated.
|
Example #1 strrchr() example
<?php
$ext = strrchr('somefile.txt', '.');
echo "file extension: $ext \n";
$ext = $ext ? strtolower(substr($ext, 1)) : '';
echo "file extension: $ext";
?>
The above example will output something similar to:
file extension: .txt file extension: txt
Note: This function is binary-safe.