Обработка строк
PHP Manual

strrpos

(PHP 4, PHP 5, PHP 7)

strrposВозвращает позицию последнего вхождения подстроки в строке

Описание

int strrpos ( string $haystack , string $needle [, int $offset = 0 ] )

Ищет позицию последнего вхождения подстроки needle в строку haystack.

Список параметров

haystack

Строка, в которой производится поиск.

needle

Если needle не является строкой, то он приводится к целому и трактуется как код символа.

offset

Если указан, то поиск начнется с данного количества символов с начала строки. Если передано отрицательное значение, поиск начнется с указанного количества символов от конца строки и будет производится в обратном направлении.

Возвращаемые значения

Возвращает номер позиции последнего вхождения needle относительно начала строки haystack (независимо от направления поиска и смещения (offset)). Также обратите внимание на то, что позиция строки отсчитывается от 0, а не от 1.

Возвращает FALSE, если искомая строка не найдена.

Список изменений

Версия Описание
5.0.0 Параметр needle может быть строкой из более чем одного символа.

Примеры

Пример #1 Проверка существования искомой строки

Легко ошибиться и перепутать возвращаемые значения в случаях "символ найден в нулевой позиции" и "символ не найден". Вот так можно узнать разницу:

<?php

$pos 
strrpos($mystring"b");
if (
$pos === false) { // обратите внимание: три знака равенства
    // не найдено...
}

?>

Пример #2 Поиск со смещением

<?php
$foo 
"0123456789a123456789b123456789c";

var_dump(strrpos($foo'7', -5));  // Поиск происходит в обратном направлении и
                                   // начинается с пятой позиции с конца. Результат: int(17)

var_dump(strrpos($foo'7'20));  // Начинает поиск с 20 позиции в строке.
                                   // Результат: int(27)

var_dump(strrpos($foo'7'28));  // Результат: bool(false)
?>

Смотрите также


Обработка строк
PHP Manual