2024 PHP Conference Japan

正規化器類別

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

簡介

正規化是將字元和字元序列轉換為正式定義的底層表示法的過程。當需要比較文字以進行排序和搜尋時,此過程最為重要,但在儲存文字以確保文字以一致的表示法儲存時,也會使用此過程。

Unicode 聯盟已經定義了一些正規化格式,反映了應用程式的各種需求

  • 正規化格式 D (NFD) - 標準分解
  • 正規化格式 C (NFC) - 標準分解後進行標準組合
  • 正規化格式 KD (NFKD) - 相容性分解
  • 正規化格式 KC (NFKC) - 相容性分解後進行標準組合
不同的格式是根據文本的一組轉換來定義的,這些轉換由演算法和一組數據文件表示。

類別概要

類別 Normalizer {
/* 常數 */
公開 常數 整數 FORM_D;
公開 常數 整數 NFD;
公開 常數 整數 FORM_KD;
公開 常數 整數 NFKD;
公開 常數 整數 FORM_C;
公開 常數 整數 NFC;
公開 常數 整數 FORM_KC;
公開 常數 整數 NFKC;
公開 常數 整數 FORM_KC_CF;
公開 常數 整數 NFKC_CF;
/* 方法 */
公開 靜態 getRawDecomposition(字串 $string, 整數 $form = Normalizer::FORM_C): ?字串
公開 靜態 isNormalized(字串 $string, 整數 $form = Normalizer::FORM_C): 布林值
公開 靜態 normalize(字串 $string, 整數 $form = Normalizer::FORM_C): 字串|false
}

預定義常數

以下常數定義了正規化器使用的正規化格式

Normalizer::FORM_C 整數
正規化格式 C (NFC) - 標準分解後進行標準組合
Normalizer::FORM_D 整數 (int)
正規化格式 D (NFD) - 標準分解
Normalizer::NFD 整數 (int)

Normalizer::FORM_KC 整數 (int)
正規化格式 KC (NFKC) - 相容分解,後接標準組合
Normalizer::NFKC 整數 (int)

Normalizer::FORM_KC_CF 整數 (int)

Normalizer::FORM_KD 整數 (int)
正規化格式 KD (NFKD) - 相容性分解
Normalizer::NFKD 整數 (int)

Normalizer::NFC 整數 (int)

Normalizer::NFKC_CF 整數 (int)

更新日誌

版本 說明
8.4.0 類別常數現在已設定類型。
8.0.0 Normalizer::NONE 已移除。

目錄

新增註釋

使用者貢獻的註釋

此頁面沒有使用者貢獻的註釋。
To Top