Spec-Zone.ru › CakePHP 3.6

Класс MessagesFileLoader

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

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

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

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

  • $_extension protected
    string
    Имя расширения.
  • $_locale protected
    string
    Локаль для загрузки для данного пакета.
  • $_name protected
    string
    Имя пакета (домена).

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

  • __construct() public

    Создаёт загрузчик файла перевода. Файл, который нужно загрузить, соответствует следующим правилам:

  • __invoke() public

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

  • translationsFolders() public

    Возвращает папки, где нужно искать файл в соответствии с локалью и именем пакета.

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

__construct()source public

__construct( string $name , string $locale , string $extension = 'po' )

Создаёт загрузчик файла перевода. Файл, который нужно загрузить, соответствует следующим правилам:

  • Локаль — это папка в каталоге Locale, в случае отсутствия папки используется резервное значение.
  • Переменная $name соответствует имени загружаемого файла.
  • Если существует загруженный плагин с имением $name, заменённым на нижний регистр, то файл перевода будет загружен из этого плагина.

Примеры:

Загрузка и анализ src/Locale/fr/validation.po

$loader = new MessagesFileLoader('validation', 'fr_FR', 'po');
$package = $loader();

Загрузка и анализ src/Locale/fr_FR/validation.mo

$loader = new MessagesFileLoader('validation', 'fr_FR', 'mo');
$package = $loader();

Загрузка файла plugins/MyPlugin/src/Locale/fr/my_plugin.po:

$loader = new MessagesFileLoader('my_plugin', 'fr_FR', 'mo');
$package = $loader();

Параметры

строка $name
Имя (домен) пакета переводов.
строка $locale

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

строка $extension необязательно 'po'

Расширение файла, используемого для загрузки. Также будет отображено в классе парсера сообщений.

__invoke()source public

__invoke( )

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

Возвращаемое значение

Aura\Intl\Package|false

Исключения

RuntimeException

если не найден класс парсера для указанного расширения файла.


translationsFolders()source public

translationsFolders( )

Возвращает папки, где нужно искать файл в соответствии с локалью и именем пакета.

Возвращаемое значение

массив
Список папок, где нужно искать файл перевода

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

$_extensionsource

protected строка

Имя расширения.

$_localesource

protected строка

Локаль для загрузки для данного пакета.

$_namesource

protected строка

Имя пакета (домена).

© 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.MessagesFileLoader.html

Spec-Zone.ru

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