(PHP 4, PHP 5, PHP 7, PHP 8)
strrchr — Находит последнее вхождение символа в строке
Возвращает подстроку строки haystack
, начиная с последнего вхождения needle
до конца строки.
haystack
Строка, в которой производится поиск
needle
Если needle
состоит более чем из одного символа, используется только первый символ. Это поведение отличается от strstr().
До PHP 8.0.0, если параметр needle
— не строка, он преобразовывается в целое число и трактуется как код символа. Это поведение устарело с PHP 7.3.0 и полагаться на него крайне не рекомендуется. В зависимости от предполагаемого поведения, параметр needle
должен быть либо явно приведён к строке, либо должен быть выполнен явный вызов функции chr().
before_needle
Если true
, то функция strrchr() возвращает часть параметра haystack
перед последним вхождением параметра needle
(без учёта needle).
Функция возвращает фрагмент строки, или false
, если подстрока needle
не найдена.
Версия | Описание |
---|---|
8.3.0 | Добавлен параметр before_needle . |
8.0.0 | Параметр needle теперь разрешает пустую строку. |
8.0.0 | Передача целого числа (int) в needle больше не поддерживается. |
7.3.0 | Передача целого числа (int) в needle объявлена устаревшей. |
Пример #1 Пример использования strrchr()
<?php
$ext = strrchr('somefile.txt', '.');
echo "Расширение файла: $ext \n";
$ext = $ext ? strtolower(substr($ext, 1)) : '';
echo "Расширение файла: $ext";
?>
Вывод приведённого примера будет похож на:
Расширение файла: .txt Расширение файла: txt
Замечание: Эта функция безопасна для обработки данных в двоичной форме.