iconv_substr

(PHP 5, PHP 7, PHP 8)

iconv_substr截取字符串的部分

說明

iconv_substr(
    string $str,
    int $offset,
    int $length = iconv_strlen($str, $charset),
    string $charset = ini_get("iconv.internal_encoding")
): string

根據(jù) offsetlength 參數(shù)指定 str 截取的部分。

參數(shù)

str

原始字符串。

offset

如果 offset 是非負數(shù),iconv_substr()str 開頭第 offset 個字符開始截出部分,從 0 開始計數(shù)。

如果 offset 是負數(shù),iconv_substr()str 末尾向前 offset 個字符開始截取。

length

如果指定了 length 并且是正數(shù),返回的值從 offset 截取部分,最多包含 length 個字符(取決于 string 的長度)。

如果傳入了負數(shù)的 length, iconv_substr() 將從第 offset 個字符到離末尾 length 個字符截出 str 的部分。 如果 offset 也是負數(shù),則開始位置計算規(guī)則的解釋見以上。

charset

如果省略了參數(shù) charset,string 的編碼被認定為 iconv.internal_encoding。

注意,offsetlength 參數(shù)總是被認為字符表現(xiàn)的偏移,基于 charset 檢測到的字符集進行統(tǒng)計計算,而相對應的 substr() 則是基于字節(jié)的位移來計算。

返回值

返回 offsetlength 參數(shù)指定的 str 的部分。

如果 stroffset 字符數(shù)更短,將會返回 false。 如果 stroffset 個字符的長度,將返回空字符串。

更新日志

版本 說明
7.0.11 如果 str 等長于 offset 個字符, 將返回空字符串。之前的版本里,這種情況是會返回 false 的。

參見