Spec-Zone.ru › CakePHP 4.3

Класс MessagesFileLoader

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

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

Пространство имён: Cake\I18n

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

  • $_extension protected
    string

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

  • $_locale protected
    string

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

  • $_name protected
    string

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

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

  • __construct() public

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

  • __invoke() public

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

  • translationsFolders() public

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

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

__construct() public

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

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

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

Примеры:

Загрузка и парсинг resources/locales/fr/validation.po

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

Загрузка и парсинг resources/locales/fr_FR/validation.mo

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

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

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

Параметры

string $name

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

string $locale

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

string $extension необязательный

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

__invoke() public

__invoke(): Cake\I18n\Package|false

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

Возвращает

Cake\I18n\Package|false

Выбрасывает

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

translationsFolders() public

translationsFolders(): array<string>

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

Возвращает

array<string>

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

$_extension protected

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

Тип

string

$_locale protected

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

Тип

string

$_name protected

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

Тип

string

© 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/4.3/class-Cake.I18n.MessagesFileLoader.html

Spec-Zone.ru

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