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