查詢

UConverter::toUCallback()函式—用法及示例

「 將給定的回撥函式應用於Unicode轉換的每個輸入程式碼點 」


函式名稱:UConverter::toUCallback()

函式描述:該函式用於將給定的回撥函式應用於Unicode轉換的每個輸入程式碼點。

適用版本:PHP 7.4.0及以上版本

用法:

UConverter::toUCallback ( string $str , callable $callback [, int $errorSubstChar = NULL ] ) : string|false

引數:

  • $str:要轉換的Unicode字串。
  • $callback:一個回撥函式,用於對每個輸入程式碼點進行處理。回撥函式應該具有以下簽名:function callback(int $codePoint): string|null,其中$codePoint是輸入程式碼點的整數值,回撥函式應返回一個字串表示對該程式碼點的處理結果,或返回null以指示忽略該程式碼點。
  • $errorSubstChar(可選):一個整數,表示在轉換期間遇到錯誤時要使用的替代字元。預設值為NULL,表示使用預設替代字元。

返回值:

  • 如果轉換成功,則返回轉換後的字串。
  • 如果轉換失敗,則返回false。

示例:

// 定義一個回撥函式,將所有大寫字母轉換為小寫字母
function toLowerCaseCallback($codePoint) {
    if ($codePoint >= 65 && $codePoint <= 90) {
        return chr($codePoint + 32);
    }
    return null; // 忽略非大寫字母
}

// 要轉換的Unicode字串
$str = "Hello World!";

// 呼叫UConverter::toUCallback()函式進行轉換
$result = UConverter::toUCallback($str, 'toLowerCaseCallback');

if ($result !== false) {
    echo $result; // 輸出:hello world!
} else {
    echo "轉換失敗!";
}

在上面的示例中,我們定義了一個名為toLowerCaseCallback的回撥函式,該函式將給定的程式碼點轉換為小寫字母(如果是大寫字母)。然後,我們使用UConverter::toUCallback()函式將該回撥函式應用於輸入字串Hello World!,並將轉換後的結果儲存在$result變數中。最後,我們檢查轉換是否成功,並輸出結果。

補充糾錯
熱門PHP函式
分享連結