(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
grapheme_substr — 返回字符串的一部分
string
输入字符串。必须是有效的 UTF-8。
offset
默认 grapheme 单位中的起始位置。如果 offset
为非负数,则返回的字符串将从 string
中的第 offset
个位置开始,从零开始计数。如果 offset
为负数,则返回的字符串将从字符串末尾的第 offset
个 grapheme 单位开始。
length
grapheme 单位中的长度。如果给出 length
并且为正数,则返回的字符串将包含最多 length
个 grapheme 单位,从 offset
开始(取决于字符串的长度)。如果给出 length
并且为负数,则将在字符串末尾省略那么多 grapheme 单位(在计算 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) 规范化形式 "D"
$char_o_diaeresis_nfd = "o\xCC\x88"; // 'LATIN SMALL LETTER O WITH DIAERESIS' (U+00F6) 规范化形式 "D"
print urlencode(grapheme_substr( "ao" . $char_a_ring_nfd . "bc" . $char_o_diaeresis_nfd . "O", 2, -1 ));
?>
上面的示例将输出
a%CC%8Abco%CC%88