(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
grapheme_substr — Возвращает часть строки
Процедурный стиль
Возвращает часть строки.
stringВходная строка. Должна быть корректным UTF-8.
offset
Начальная позиция в единицах графемы по умолчанию.
Если offset больше, либо равна нулю, возвращаемая строка будет начинаться с позиции offset в $string, начиная с нуля.
Если значение offset отрицательное, возвращаемая строка будет начинаться с единицы графемы offset от конца строки.
length
Длина в графемных единицах.
Если задано положительное значение length, возвращаемая строка будет содержать не более length единиц графемы,
начиная со значения offset (в зависимости от длины строки).
Если задано отрицательное значение length, то такое количество единиц графемы будет опущено в конце строки
(после того, как начальная позиция была вычислена, если параметр offset отрицательный).
Если offset обозначает позицию за пределами этого усечения, будет возвращена пустая строка.
Возвращает извлечённую часть string или false, если возникла ошибка.
| Версия | Описание |
|---|---|
| 8.0.0 |
Функция теперь последовательно прижимает выходящие за границы смещения к границе строки.
Ранее в некоторых случаях вместо пустой строки возвращалось значение false.
|
Пример #1 Пример использования grapheme_substr()
<?php
$char_a_ring_nfd = "a\xCC\x8A"; // 'LATIN SMALL LETTER A WITH RING ABOVE' (U+00E5) normalization form "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) normalization form "D"
print urlencode(grapheme_substr( "ao" . $char_a_ring_nfd . "bc" . $char_o_diaeresis_nfd . "O", 2, -1 ));
?>Результат выполнения приведённого примера:
a%CC%8Abco%CC%88