English | 简体中文 | 繁體中文
查询

Normalizer::isNormalized()函数—用法及示例

「 检测给定的 Unicode 字符串是否已经进行了 Unicode 规范化 」


函数名称:Normalizer::isNormalized()

适用版本:PHP 5 >= 5.3.0, PHP 7, PHP 8

用法:Normalizer::isNormalized() 函数用于检测给定的 Unicode 字符串是否已经进行了 Unicode 规范化。它接受两个参数:字符串和规范化形式。

语法:bool Normalizer::isNormalized( string $input [, int $form = Normalizer::FORM_C ] )

参数:

  • $input:要检测的 Unicode 字符串。
  • $form:规范化形式的常量。默认为 Normalizer::FORM_C。可选的规范化形式常量有:
    • Normalizer::FORM_C:使用 Unicode 规范化形式 C。
    • Normalizer::FORM_D:使用 Unicode 规范化形式 D。
    • Normalizer::FORM_KD:使用 Unicode 规范化形式 KD。
    • Normalizer::FORM_KC:使用 Unicode 规范化形式 KC。

返回值:如果输入字符串已经进行了指定的规范化形式,则返回 true;否则返回 false。

示例:

// 示例1:检测字符串是否已经进行了规范化
$text = "Café";
$isNormalized = Normalizer::isNormalized($text, Normalizer::FORM_C);
if ($isNormalized) {
    echo "字符串已进行规范化";
} else {
    echo "字符串未进行规范化";
}

// 示例2:检测字符串是否已经进行了 NFD 规范化
$text = "Café";
$isNormalized = Normalizer::isNormalized($text, Normalizer::FORM_D);
if ($isNormalized) {
    echo "字符串已进行 NFD 规范化";
} else {
    echo "字符串未进行 NFD 规范化";
}

输出: 示例1的输出为:字符串已进行规范化 示例2的输出为:字符串未进行 NFD 规范化

注意:在使用该函数之前,需要确保 PHP 已经启用了 "intl" 扩展。

补充纠错
热门PHP函数
分享链接