Spec-Zone.ru › CakePHP 3.2

Класс I18n

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

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

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

  • string

    DEFAULT_LOCALE
    'en_US'

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

  • $_collection protected static
    Aura\Intl\TranslatorLocator
    Коллекция переводчиков
  • $_defaultLocale protected static
    string
    Значение по умолчанию локали окружения

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

  • clear() public static

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

  • config() public static

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

  • defaultFormatter() public static

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

  • defaultLocale() public static

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

  • locale() public static

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

  • translator() public static

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

  • 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

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

END_OF_DOCUMENT_MARKER

defaultFormatter()source public static

defaultFormatter( string|null $name null )

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

Если вызов не содержит аргументов, возвращает текущее значение конфигурации.

Параметры

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

Возвращает

string
Имя форматера.

defaultLocale()source public static

defaultLocale( )

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

Возвращает

string

locale()source public static

locale( string|null $locale null )

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

При вызове без аргументов возвращает текущую конфигурированную локаль, хранящуюся в настройке PHP intl.default_locale.

Параметры

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

Возвращает

string|null
Имя локали по умолчанию.

translator()source public static

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

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

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

Пример:

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

 $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');
);

Параметры

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

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

Возвращает

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

translators()source public static

translators( )

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

Возвращает

Aura\Intl\TranslatorLocator
Коллекция переводчиков.

useFallback()source public static

useFallback( boolean $enable true )

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

Параметры

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

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

$_collectionsource

protected static Aura\Intl\TranslatorLocator

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

END_OF_DOCUMENT_MARKER

$_defaultLocalesource

protected static строка

Локаль по умолчанию среды

© 2005–2016 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.
http://api.cakephp.org/3.2/class-Cake.I18n.I18n.html

Spec-Zone.ru

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