strripos
(PHP 5, PHP 7)
strripos — Возвращает позицию последнего вхождения подстроки без учета регистра
Описание
$haystack
, string $needle
, int $offset
= 0
) : int|false
Ищет позицию последнего вхождения подстроки needle
в строку haystack
.
В отличие от strrpos(), strripos() не учитывает регистр символов.
Список параметров
-
haystack
-
Строка, в которой производится поиск.
-
needle
-
До PHP 8.0.0, если параметр
needle
не является строкой, он преобразуется в целое число и трактуется как код символа. Это поведение устарело с PHP 7.3.0, и полагаться на него крайне не рекомендуется. В зависимости от предполагаемого поведения, параметрneedle
должен быть либо явно приведен к строке, либо должен быть выполнен явный вызов chr(). -
offset
-
Если равно или больше ноля, то поиск будет идти слева направо и, при этом, будут пропущены первые
offset
байт строкиhaystack
.Если меньше ноля, то поиск будет идти справа налево. При этом будут отброшены
offset
байт с концаhaystack
и найдено первое найденное вхождениеneedle
.Замечание:
Фактически это будет последнее вхождение
needle
без учетаoffset
последних байт.
Возвращаемые значения
Возвращает номер позиции последнего вхождения needle
относительно начала строки haystack
(независимо от направления поиска и смещения (offset)).
Замечание: Позиция в строке строки отсчитывается от 0, а не от 1.
Возвращает false
, если искомая строка не найдена.
Эта функция может возвращать как логическое значение false
, так и значение не типа boolean, которое приводится к false
. За более подробной информацией обратитесь к разделу Булев тип. Используйте оператор === для проверки значения, возвращаемого этой функцией.
Список изменений
Версия | Описание |
---|---|
8.0.0 |
Передача целого числа (int) в needle больше не поддерживается.
|
7.3.0 |
Передача целого числа (int) в needle объявлена устаревшей.
|
Примеры
Пример #1 Пример использования strripos()
<?php
$haystack = 'ababcd';
$needle = 'aB';
$pos = strripos($haystack, $needle);
if ($pos === false) {
echo "К сожалению, ($needle) не найдена в ($haystack)";
} else {
echo "Поздравляем!\n";
echo "Последнее вхождение ($needle) найдено в ($haystack) в позиции ($pos)";
}
?>
Результат выполнения данного примера:
Поздравляем! Последнее вхождение (aB) найдено в (ababcd) в позиции (2)
Смотрите также
- strpos() - Возвращает позицию первого вхождения подстроки
- stripos() - Возвращает позицию первого вхождения подстроки без учета регистра
- strrpos() - Возвращает позицию последнего вхождения подстроки в строке
- strrchr() - Находит последнее вхождение символа в строке
- stristr() - Регистронезависимый вариант функции strstr
- substr() - Возвращает подстроку