La classe Normalizer

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

Introduction

La normalisation est un processus qui implique la transformation de caractères et de séquences de caractères dans une représentation formelle. Ce processus est important quand des textes doivent être comparés à des fins de tri et de recherche, mais il est aussi important pour le stockage des données, afin que les documents soient cohérents.

Le consortium Unicode Consortium a défini un nombre de formes de normalisations pour refléter les différents besoins des applications :

  • Normalization Form D (NFD) : décomposition canonique
  • Normalization Form C (NFC) : décomposition canonique, suivie d'une composition canonique
  • Normalization Form KD (NFKD) : décomposition compatible
  • Normalization Form KC (NFKC) : décomposition compatible suivi d'une composition canonique
Les différentes formes sont définies en terme de transformations de texte, transformations qui sont exprimées avec des algorithmes et des fichiers de données.

Synopsis de la classe

classNormalizer {
publicconstintFORM_D;
publicconstintNFD;
publicconstintFORM_KD;
publicconstintNFKD;
publicconstintFORM_C;
publicconstintNFC;
publicconstintFORM_KC;
publicconstintNFKC;
publicconstintFORM_KC_CF;
publicconstintNFKC_CF;
publicstaticgetRawDecomposition(string$string, int$form = Normalizer::FORM_C): ?string
publicstaticisNormalized(string$string, int$form = Normalizer::FORM_C): bool
publicstaticnormalize(string$string, int$form = Normalizer::FORM_C): string|false
}

Constantes pré-définies

Les constantes suivantes définissent les formes de normalisation à appliquer par le normalizer :

Normalizer::FORM_C
Normalization Form C (NFC) : décomposition canonique suivie d'une composition canonique
Normalizer::FORM_D
Normalization Form D (NFD) : décomposition canonique
Normalizer::NFD

Normalizer::FORM_KC
Normalization Form KC (NFKC) : décomposition compatible, suivie d'une composition canonique
Normalizer::NFKC

Normalizer::FORM_KC_CF

Normalizer::FORM_KD
Normalization Form KD (NFKD) : décomposition compatible
Normalizer::NFKD

Normalizer::NFC

Normalizer::NFKC_CF

Historique

VersionDescription
8.0.0Normalizer::NONE a été supprimé.

Sommaire

To Top