grapheme_strrpos

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

grapheme_strrposВычисляет позицию последнего вхождения подстроки в графемных кластерах

Описание

Процедурный стиль

function grapheme_strrpos(
    string $haystack,
    string $needle,
    int $offset = 0,
    string $locale = ""
): int|false

Функция находит позицию последнего вхождения подстроки. Позиция вычисляется в графемных кластерах.

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

haystack

Строка по стандарту UTF-8, в которой требуется найти подстроку.

needle

Подстрока по стандарту UTF-8, которую требуется найти.

offset

Необязательный параметр offset указывает смещение, с которого начнётся поиск в строке haystack. Смещение вычисляется в графемных кластерах, а не в байтах или символах. Отрицательные смещения отсчитываются с конца строки, но позиция по-прежнему вычисляется с начала строки haystack независимо от значения параметра offset.

Необязательный параметр offset указывает место начала поиска в строке haystack как смещение в графемных кластерах, а не в байтах или символах. При отрицательном значении смещение отсчитывается с конца строки. Возвращаемая позиция по-прежнему вычисляется от начала строки haystack независимо от значения параметра offset. Поиск выполняется справа налево и находит первое вхождение строки needle начиная с выбранного графемного кластера.
locale
Идентификатор языковых и региональных параметров.

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

Функция возвращает позицию в виде целого числа. Функция grapheme_strrpos() вернёт false, если не найдёт подстроку needle.

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

Версия Описание
8.5.0 Добавили необязательный параметр locale.

Примеры

Пример #1 Пример поиска позиции последнего вхождения подстроки функцией grapheme_strrpos()

<?php

// Символ | Название | Кодовая точка | Форма нормализации

// å: 'LATIN SMALL LETTER A WITH RING ABOVE', U+00E5, NFD
$char_a_ring_nfd = "a\xCC\x8A";

// ö: 'LATIN SMALL LETTER O WITH DIAERESIS', U+00F6, NFD
$char_o_diaeresis_nfd = "o\xCC\x88";

print grapheme_strrpos(
    $char_a_ring_nfd . $char_o_diaeresis_nfd . $char_o_diaeresis_nfd,
    $char_o_diaeresis_nfd
);

Результат выполнения приведённого примера:

2

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

Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы
To Top