Spec-Zone.ru › CakePHP 3.6

Класс I18n

I18n обрабатывает перевод строк текста и форматов времени.

Пространство имён: Cake\I18n
Расположение: I18n/I18n.php

Краткое описание констант

  • string

    DEFAULT_LOCALE
    'en_US'

Краткое описание свойств

  • $_collection protected static
    Cake\I18n\TranslatorRegistry|null
    Коллекция переводчиков
  • $_defaultLocale protected static
    string
    Локаль по умолчанию среды

Краткое описание методов

  • clear() public static

    Уничтожает все экземпляры переводчиков и создаёт новую пустую коллекцию переводов.

  • config() public static

    Регистрирует вызываемый объект, который может использоваться для создания новых экземпляров переводчиков для одного и того же домена переводов. Загрузчики будут вызываться всякий раз, когда запрашивается объект переводчика для домена, который ещё не настроен или не загружен.

  • defaultFormatter() public static deprecated

    Устанавливает имя форматера сообщений по умолчанию для использования в будущих экземплярах переводчиков.

  • defaultLocale() public static deprecated

    Возвращает локаль по умолчанию до любых изменений, т.е. значение, хранящееся в настройке intl.default_locale PHP до любых манипуляций этим классом.

  • getDefaultFormatter() public static
    Возвращает текущий настроенный форматер по умолчанию.
  • getDefaultLocale() public static
    Возвращает локаль по умолчанию.
  • getLocale() public static

    Возвращает текущую настроенную локаль, как хранится в настройке intl.default_locale PHP.

  • getTranslator() public static
    Возвращает экземпляр переводчика, настроенного для имени и локали.
  • locale() public static deprecated

    Устанавливает локаль по умолчанию для использования в будущих экземплярах переводчиков. Это также влияет на настройку intl.default_locale PHP.

  • setDefaultFormatter() public static

    Устанавливает имя форматера сообщений по умолчанию для использования в будущих экземплярах переводчиков. По умолчанию доступны форматеры default и sprintf.

  • setLocale() public static

    Устанавливает локаль по умолчанию для использования в будущих экземплярах переводчиков. Это также влияет на настройку intl.default_locale PHP.

  • setTranslator() public static
    Устанавливает переводчика.
  • translator() public static deprecated

    Возвращает экземпляр переводчика, настроенного для имени и переданной локали. Если локаль не передана, используется значение, возвращаемое методом getLocale().

  • translators() public static

    Возвращает экземпляр коллекции переводчиков. Он может использоваться для получения конкретных переводчиков на основе их имени и локали или для настройки некоторых аспектов будущих переводов, которые ещё не построены.

  • useFallback() public static
    Установить использование падения домена.

Подробное описание методов

clear()source public static

clear( )

Уничтожает все экземпляры переводчиков и создаёт новую пустую коллекцию переводов.

config()source public static

config( string $name , callable $loader )

Регистрирует вызываемый объект, который может использоваться для создания новых экземпляров переводчиков для одного и того же домена переводов. Загрузчики будут вызываться всякий раз, когда запрашивается объект переводчика для домена, который ещё не настроен или не загружен.

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

Объекты загрузчиков получат два аргумента: имя домена, который необходимо создать, и запрашиваемую локаль. Эти объекты могут собирать сообщения из любого источника, но должны вернуть объект Aura\Intl\Package.

Пример:

use Cake\I18n\MessagesFileLoader;
 I18n::config('my_domain', function ($name, $locale) {
     // Load src/Locale/$locale/filename.po
     $fileLoader = new MessagesFileLoader('filename', $locale, 'po');
     return $fileLoader();
 });

Вы также можете собрать объект пакета самостоятельно:

use Aura\Intl\Package;
 I18n::config('my_domain', function ($name, $locale) {
     $package = new Package('default');
     $messages = (...); // Fetch messages for locale from external service.
     $package->setMessages($message);
     $package->setFallback('default');
     return $package;
 });

Параметры

строка $name
Имя переводчика, для которого создать загрузчик
вызываемый объект $loader

Вызываемый объект, который должен вернуть экземпляр пакета для использования при сборке нового переводчика.

defaultFormatter()source public static deprecated

defaultFormatter( string|null $name = null )

Устанавливает имя форматера сообщений по умолчанию для использования в будущих экземплярах переводчиков.

По умолчанию доступны форматеры default и sprintf.

Если вызвать без аргументов, вернётся текущее настроенное значение.

Устаревшее

3.5 Используйте getDefaultFormatter() и setDefaultFormatter().

Параметры

строка|null $name необязательно null
Имя форматера для использования.

Возвращает

строка
Имя форматера.

defaultLocale()source public static deprecated

defaultLocale( )

Возвращает локаль по умолчанию до любых изменений, т.е. значение, хранящееся в настройке intl.default_locale PHP до любых манипуляций этим классом.

Устаревшее

3.5 Используйте getDefaultLocale()

Возвращает

строка

getDefaultFormatter()source public static

getDefaultFormatter( )

Возвращает текущий настроенный форматер по умолчанию.

Возвращает

строка
Имя форматера.

getDefaultLocale()source public static

getDefaultLocale( )

Возвращает локаль по умолчанию.

Возвращает локаль по умолчанию до любых изменений, т.е. значение, хранящееся в настройке intl.default_locale PHP до любых манипуляций этим классом.

Возвращает

строка

getLocale()source public static

getLocale( )

Возвращает текущую настроенную локаль, как хранится в настройке intl.default_locale PHP.

Возвращает

строка
Имя локали по умолчанию.
END_OF_DOCUMENT_MARKER

getTranslator()source public static

getTranslator( string $name = 'default' , string|null $locale = null )

Возвращает экземпляр переводчика, который был настроен для указанного имени и региона.

Если регион не передан, используется значение, возвращаемое методом getLocale().

Параметры

строка $name необязательно 'default'
Домен сообщений для перевода.
строка|null $locale необязательно null
Регион для переводчика.

Возвращает

Aura\Intl\TranslatorInterface
Настроенный переводчик.

Выбрасывает

Aura\Intl\Exception

locale()source public static deprecated

locale( string|null $locale = null )

Устанавливает значение по умолчанию для региона, который будет использоваться для будущих экземпляров переводчика. Это также влияет на настройку PHP intl.default_locale.

Если вызов не содержит аргументов, возвращает текущий настроенный регион, хранящийся в настройке PHP intl.default_locale.

Устаревшее

3.5 Используйте setLocale() и getLocale().

Параметры

строка|null $locale необязательно null
Имя региона, которое нужно установить по умолчанию.

Возвращает

строка|null
Имя региона по умолчанию.

setDefaultFormatter()source public static

setDefaultFormatter( string $name )

Устанавливает имя форматера сообщений по умолчанию, который будет использоваться для будущих экземпляров переводчика. По умолчанию доступны форматеры default и sprintf.

Параметры

строка $name
Имя форматера для использования.

setLocale()source public static

setLocale( string $locale )

Устанавливает регион по умолчанию для использования в будущих экземплярах переводчика. Это также влияет на настройку PHP intl.default_locale.

Параметры

строка $locale
Имя региона, которое нужно установить по умолчанию.

setTranslator()source public static

setTranslator( string $name , callable $loader , string|null $locale = null )

Устанавливает переводчик.

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

Пример:

I18n::setTranslator('default', function () {
     $package = new \Aura\Intl\Package();
     $package->setMessages([
         'Cake' => 'Gâteau'
     ]);
     return $package;
 }, 'fr_FR');

 $translator = I18n::getTranslator('default', 'fr_FR');
 echo $translator->translate('Cake');

Также можно использовать класс Cake\I18n\MessagesFileLoader, чтобы загрузить определённый файл из папки. Например, для загрузки файла my_translations.po из папки src/Locale/custom, необходимо выполнить:

I18n::setTranslator(
 'default',
 new MessagesFileLoader('my_translations', 'custom', 'po'),
 'fr_FR'
);

Параметры

строка $name
Домен сообщений для перевода.
вызываемый объект $loader

Функция обратного вызова или вызываемый класс, ответственный за создание экземпляра пакета переводов.

строка|null $locale необязательно null
Регион для переводчика.

translator()source public static deprecated

translator( string $name = 'default' , string|null $locale = null , callable $loader = null )

Возвращает экземпляр переводчика, который был настроен для указанного имени и переданного региона. Если регион не передан, используется значение, возвращаемое методом getLocale().

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

Пример:

I18n::setTranslator('default', function () {
     $package = new \Aura\Intl\Package();
     $package->setMessages([
         'Cake' => 'Gâteau'
     ]);
     return $package;
 }, 'fr_FR');

 $translator = I18n::translator('default', 'fr_FR');
 echo $translator->translate('Cake');

Также можно использовать класс Cake\I18n\MessagesFileLoader, чтобы загрузить определённый файл из папки. Например, для загрузки файла my_translations.po из папки src/Locale/custom, необходимо выполнить:

I18n::translator(
 'default',
 'fr_FR',
 new MessagesFileLoader('my_translations', 'custom', 'po');
);

Устаревшее

3.5 Используйте getTranslator() и setTranslator()

Параметры

строка $name необязательно 'default'
Домен сообщений для перевода.
строка|null $locale необязательно null
Регион для переводчика.
вызываемый объект $loader необязательно null

Функция обратного вызова или вызываемый класс, ответственный за создание экземпляра пакета переводов.

Возвращает

Aura\Intl\TranslatorInterface|null
Настроенный переводчик.

Выбрасывает

Aura\Intl\Exception

translators()source public static

translators( )

Возвращает экземпляр коллекции переводчиков. Он может использоваться для получения конкретных переводчиков на основе их имени и региона или для настройки некоторых аспектов будущих переводов, которые еще не созданы.

Возвращает

Cake\I18n\TranslatorRegistry
Коллекция переводчиков.

useFallback()source public static

useFallback( boolean $enable = true )

Устанавливает, используется ли обращение к доменному резервному варианту.

Параметры

логическое значение $enable необязательно true
Флаг для включения или выключения резервного варианта

Подробное описание свойств

$_collectionsource

protected static Cake\I18n\TranslatorRegistry|null

Коллекция переводчиков

$_defaultLocalesource

protected static строка

Регион по умолчанию для среды

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/3.6/class-Cake.I18n.I18n.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API