PHP 8.6.0 Beta 1 is available for testing

Класс Normalizer

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

Введение

Нормализация — процесс преобразования символов и их последовательностей в формальное представление более низкого уровня. Этот процесс крайне важен при сравнении строк при сортировке или при поиске, но также используется при сохранении текста, чтобы быть уверенным в том, что он сохранился корректно.

Консорциум Unicode определил несколько форм нормализации, отражающих разные потребности приложений:

  • Normalization Form D (NFD) — Каноническое разложение
  • Normalization Form C (NFC) — Каноническое разложение с последующей канонической сборкой
  • Normalization Form KD (NFKD) — Совместимое разложение
  • Normalization Form KC (NFKC) — Совместимое разложение с последующей канонической сборкой
Различные формы задаются в требованиях наборов преобразований текста. Преобразования вычисляются с алгоритма и набора файлов данных.

Обзор класса

class Normalizer {
/* Константы */
public const int FORM_D ;
public const int NFD ;
public const int FORM_KD ;
public const int NFKD ;
public const int FORM_C ;
public const int NFC ;
public const int FORM_KC ;
public const int NFKC ;
public const int FORM_KC_CF ;
public const int NFKC_CF ;
/* Методы */
public static function getRawDecomposition (string $string, int $form = Normalizer::FORM_C ): ? string
public static function isNormalized (string $string, int $form = Normalizer::FORM_C ): bool
public static function normalize (string $string, int $form = Normalizer::FORM_C ): string |false
}

Предопределённые константы

Константы устанавливают форму нормализации, которую использует нормализатор:

Normalizer::FORM_C int
Форма нормализации 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 удалили.

Содержание

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы

AltStyle によって変換されたページ (->オリジナル) /