Класс MessagesFileLoader
Объект-фабрика для пакетов переводов, загружающий файлы переводов на основе расширения файла и имени пакета.
Этот класс является вызываемым, поэтому его можно использовать в качестве аргумента загрузчика пакетов.
Краткое описание свойств
- $_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