函数名称: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" 扩展。