Класс MessagesFileLoader
Фабрика для загрузки файлов переводов, выбирающая способ загрузки в зависимости от расширения файла и имени пакета.
Этот класс является вызываемым, поэтому его можно использовать в качестве аргумента загрузчика пакета.
Краткое описание свойств
-
$_extensionprotectedИмя расширения.string -
$_localeprotectedЛокаль для загрузки для данного пакета.string -
$_nameprotectedИмя пакета (домена).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( )
Возвращает папки, где нужно искать файл в соответствии с локалью и именем пакета.
Возвращаемое значение
массивСписок папок, где нужно искать файл перевода
Подробное описание свойств
© 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