2024 日本 PHP 研討會

grapheme_substr

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

grapheme_substr返回字串的一部分

說明

程序式風格

grapheme_substr(字串 $string, 整數 $offset, ?整數 $length = null): 字串|false

回傳字串的其中一部分

參數

string (字串)

輸入的字串。必須是有效的 UTF-8 編碼。

offset (偏移量)

以預設字素單位計算的起始位置。如果 offset 為非負數,則回傳的字串將從 string 中的第 offset 個位置開始,從零開始計算。如果 offset 為負數,則回傳的字串將從 string 結尾的第 offset 個字素單位開始。

length (長度)

以字素單位計算的長度。如果給定了 length 且為正數,則回傳的字串將最多包含從 offset 開始的 length 個字素單位(取決於 string 的長度)。如果給定了 length 且為負數,則將從 string 的結尾省略這麼多個字素單位(在 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

參見

新增筆記

使用者提供的筆記

此頁面沒有使用者提供的筆記。
To Top