grapheme_substr
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
grapheme_substr — Return part of a string
說明
過程化風格
$string
, int $offset
, ?int $length
= null
): string|falseReturn part of a string
參數
-
string
-
The input string. Must be valid UTF-8.
-
offset
-
Start position in default grapheme units. If
offset
is non-negative, the returned string will start at theoffset
'th position instring
, counting from zero. Ifoffset
is negative, the returned string will start at theoffset
'th grapheme unit from the end of string. -
length
-
Length in grapheme units. If
length
is given and is positive, the string returned will contain at mostlength
grapheme units beginning fromoffset
(depending on the length of string). Iflength
is given and is negative, then that many grapheme units will be omitted from the end of string (after the start position has been calculated whenoffset
is negative). Ifoffset
denotes a position beyond this truncation, an empty string will be returned.
返回值
Returns the extracted part of string
, 或者在失敗時返回 false
.
更新日誌
版本 | 說明 |
---|---|
8.0.0 |
The function now consistently clamps out-of-bounds offsets to the string boundary.
Previously, false was returned instead of the empty string in some cases.
|
範例
示例 #1 grapheme_substr() example
<?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
參見
- grapheme_extract() - Function to extract a sequence of default grapheme clusters from a text buffer, which must be encoded in UTF-8
- » Unicode Text Segmentation: Grapheme Cluster Boundaries