(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
Замечание: Функция безопасна для обработки данных в двоичной форме.