Normalizer::isNormalized

normalizer_is_normalized

渡された文字列が、指定した正規化を適用済みかどうかを調べる

説明

オブジェクト指向型

public static bool Normalizer::isNormalized(string $string, int $form = Normalizer::FORM_C)

手続き型

bool normalizer_is_normalized(string $string, int $form = Normalizer::FORM_C)

渡された文字列が、指定した正規化を適用済みかどうかを調べます。

パラメータ

string

正規化する入力文字列。

form

正規化方式のいずれか。

戻り値

正規化されている場合に true、正規化されていない場合やエラーが発生した場合に false を返します。

例1 normalizer_is_normalized の例

<?php
$char_A_ring = "\xC3\x85"; // 'LATIN CAPITAL LETTER A WITH RING ABOVE' (U+00C5)
$char_combining_ring_above = "\xCC\x8A";  // 'COMBINING RING ABOVE' (U+030A)

$char_orig = 'A' . $char_combining_ring_above;
$char_norm = normalizer_normalize( 'A' . $char_combining_ring_above, Normalizer::FORM_C );

echo ( normalizer_is_normalized($char_orig, Normalizer::FORM_C) ) ? "normalized" : "not normalized";
echo '; ';
echo ( normalizer_is_normalized($char_norm, Normalizer::FORM_C) ) ? "normalized" : "not normalized";
?>

例2 オブジェクト指向の例

<?php
$char_A_ring = "\xC3\x85"; // 'LATIN CAPITAL LETTER A WITH RING ABOVE' (U+00C5)
$char_combining_ring_above = "\xCC\x8A";  // 'COMBINING RING ABOVE' (U+030A)

$char_orig = 'A' . $char_combining_ring_above;
$char_norm = Normalizer::normalize( 'A' . $char_combining_ring_above, Normalizer::FORM_C );

echo ( Normalizer::isNormalized($char_orig, Normalizer::FORM_C) ) ? "normalized" : "not normalized";
echo '; ';
echo ( Normalizer::isNormalized($char_norm, Normalizer::FORM_C) ) ? "normalized" : "not normalized";
?>

上の例の出力は以下となります。

not normalized; normalized

参考

  • normalizer_normalize