Класс Locale
(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
Введение
"Locale" - это идентификатор, используемый для распознавания языка, культуры или региональные особенности поведения API. Локали PHP организованы и обозначены так же как и локали CLDR, используемые ICU и многими производителями систем Unix, Linux и Mac, Java и т.д. Локали обозначаются согласно языковым меткам стандарта RFC 4646 (который использует тире, а не подчеркивание) в дополнение к традиционным обозначением с использованием символа подчеркивания. Функции данного класса понимают оба написания, если явно не указано иное.
Примеры идентификаторов:
- en-US (Английский, США)
- zh-Hant-TW (Китайский, Традиционное начертание, Тайвань)
- fr-CA, fr-FR (Канадский Французский и Французский соответственно)
Класс Locale (и соответствующие процедурные функции) используется для взаимодействия с идентификаторами локалей, для проверки правильного составления идентификатора, его корректности и т.д. Модули используются CLDR в UAX #35 (и наследуется ICU), являются корректными и используйются везде они были бы в ICU.
Данный класс нельзя инстанциировать как объект. Все методы/функции объявлены статическими.
null
или пустая строка будут считаться за "базовую" локаль.
"Базовая" локаль - это "en_US_POSIX" в CLDR. Языковые метки
(и идентификаторы локали) регистронезависимы. В данном классе
присутствует метод, преобразующий их к каноничному виду.
Обзор классов
$langtag
, string $locale
, bool $canonicalize
= false
) : bool$langtag
, string $locale
, bool $canonicalize
= false
, string $default
= ?
) : stringПредопределенные константы
-
Locale::DEFAULT_LOCALE
(null) - Используется в качестве параметра, задающего локаль в функциях где это необходимо, таких как NumberFormatter. Эта константа вынуждает использовать локаль по умолчанию.
Эти константы описывают выбор локали для метода getLocale различных классов.
-
Locale::ACTUAL_LOCALE
(string) - Описывает текущую локаль.
-
Locale::VALID_LOCALE
(string) - Это самая специфичная локаль, поддерживаемая ICU.
Эти константы описывают как разбираются или из чего состоят локали. Они используются как ключи массива аргументов для locale_compose() и как возвращаемые значения locale_parse() в виде ключей возвращаемого ассоциативного массива.
-
Locale::LANG_TAG
(string) - Метка для языка
-
Locale::EXTLANG_TAG
(string) - Расширенная метка языка
-
Locale::SCRIPT_TAG
(string) - Метка начертания
-
Locale::REGION_TAG
(string) - Метка региона
-
Locale::VARIANT_TAG
(string) - Метка варианта
-
Locale::GRANDFATHERED_LANG_TAG
(string) - Метка языка в старом синтаксисе (grandfathered)
-
Locale::PRIVATE_TAG
(string) - Приватная метка
Содержание
- Locale::acceptFromHttp — Попытаться определить наилучшую локаль основываясь на заголовке HTTP "Accept-Language"
- Locale::canonicalize — Канонизировать строку локали
- Locale::composeLocale — Возвращает корректно отсортированные и разделенные идентификаторы локали
- Locale::filterMatches — Проверить, соответствует ли тег фильтра языка локали
- Locale::getAllVariants — Получение вариантов из переданной локали
- Locale::getDefault — Получение значения локали INTL по умолчанию из опции 'default_locale'
- Locale::getDisplayLanguage — Возвращает соответствующим образом локализованное имя языка для заданной локали
- Locale::getDisplayName — Возвращает соответствующим образом локализованное имя локали
- Locale::getDisplayRegion — Возвращает соответствующим образом локализованное название региона для заданной локали
- Locale::getDisplayScript — Возвращает соответствующим образом локализованное название алфавита для заданной локали
- Locale::getDisplayVariant — Возвращает соответствующим образом локализованное название варианта для заданной локали
- Locale::getKeywords — Получить ключевые слова для локали
- Locale::getPrimaryLanguage — Получить первичный язык для локали
- Locale::getRegion — Получить регион для локали
- Locale::getScript — Получить алфавит для локали
- Locale::lookup — Поиск языковых меток наиболее подходящих заданной локали
- Locale::parseLocale — Получить ассоциативный массив всех подтегов локали
- Locale::setDefault — Установить локаль по умолчанию во время исполнения