Введение
Расширение интернационализации (далее Intl) - это обёртка для библиотеки
» ICU, позволяющей программистам на PHP
производить различные операции, что поведение зависит от локали, например такие как
форматирование, транслитерация, преобразование кодировок, операции с календарем,
совместимое с » UCA
сравнение, определение
границ текста и работать с идентификаторами локатей, временными зонами
и графемами.
Программный интерфейс расширения разрабатывается так, чтобы как можно точнее повторять
API ICU, чтобы люди, работавшие с ICE в C/C++ или Java, могли легко использовать API PHP.
Также благодоря этому документация ICE может быть полезной чтобы понять различие функции ICU.
Intl состоит из несколких модулей, каждый из которых предоставляет соответствующий API ICU:
-
Модуль сравнения: предоставляет инструменты для сравнения строк
с поддержкой поддержкой соответствующего локали порядка сортировки.
-
Модуль форматирования чисел: позволяет отображать числа в соответствии с
правилами локали, или заданным шаблоном или с набором правил.
Также позволяет правильно разбирать строки в числа.
-
Модуль форматирования сообщений: позволяет создавать сообщения, включающие
данные (такие как числа и даты), отформатированные в соответствии с
заданными шаблоном и локальными правилами, и, также, разбирать
сообщения, извлекая из них данные.
-
Модуль нормализации: предоставляет функции для преобразования текста
в одну из нормализованных форм Unicode. Также предоставляет возможность
проверить, является ли предоставленный текст уже нормализованным.
-
Модуль локали: предоставляет взаимодействие с идентификаторами
локали как к функциями, позволяя получить вложенные теги локали;
разбор, композиция, сравнение (поиск и фильтрация) идентификаторов локали.
-
Модуль календаня: предоставляет класс, полезный для проведения зависимых
от локали операций с календарем, получения различной информации, такой как
временные зоны для выбранной локали, первый день недели или
режим текущего зимнего/летнего времени.
-
Модуль временной зоны: предоставляет обертку над » базой данных временных зон,
в которой содержится исчерпывающая информация о всех мировых временных зонах.
-
Модуль форматирования даты: позволяет отображать дату в соответствии с
принятым для данной локали форматом либо заданным шаблоном или набором правил.
Также нужен для разбора строк, содержащих описание даты и времени.
-
Модуль транслитерации: позволяет получить представление строки на различных языках в латинице.