mb_strrchr

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

mb_strrchrFinds the last occurrence of a character in a string within another

Description

mb_strrchr(
    string $haystack,
    string $needle,
    bool $before_needle = false,
    ?string $encoding = null
): string|false

mb_strrchr() finds the last occurrence of needle in haystack and returns the portion of haystack. If needle is not found, it returns false.

Parameters

haystack

The string from which to get the last occurrence of needle

needle

The string to find in haystack

before_needle

Determines which portion of haystack this function returns. If set to true, it returns all of haystack from the beginning to the last occurrence of needle. If set to false, it returns all of haystack from the last occurrence of needle to the end,

encoding

Character encoding name to use. If it is omitted, internal character encoding is used.

Return Values

Returns the portion of haystack. or false if needle is not found.

Changelog

Version Description
8.0.0 needle now accepts an empty string.
8.0.0 encoding is nullable now.

See Also

  • strrchr() - Find the last occurrence of a character in a string
  • mb_strstr() - Finds first occurrence of a string within another
  • mb_strrichr() - Finds the last occurrence of a character in a string within another, case insensitive
add a note

User Contributed Notes 1 note

up
0
Anonymous
1 year ago
needle: /
string: o/a/i

if before_needle is 1 then needle is excluded: "o/a"
if before_needle is false then needle is included: "/i"

as code:

$str="o/a/i";
$cs="/";

echo "if before_needle == 1 then needle is excluded"."\n";
$str="o/a/i";
$cs="/";
echo mb_strrchr ($str,$cs,1)."\n";

echo "if before_needle == false then needle is included"."\n";
$str="o/a/i";
$cs="/";
echo mb_strrchr ($str,$cs,0)."\n";
To Top