orangelaravel / language
Language for Laravel
v1.2.2
2022-10-27 15:01 UTC
Requires
- php: >=5.4.0
- ext-json: *
README
Небольшая библиотека для работы с переводами в языковых файлах.
Данная библиотека может:
- Добавлять
- Редактировать
- Показывать
- Удалять
Добавлены artisan команды:
- Показать список языков
- Добавление нового языка
Установка
composer require orangelaravel/language
Для работы artisan команд нужно в файле app\Console\Kernel
добавить следующее:
protected $commands = [ LanguageAdd::class, LanguageList::class ];
Использование
- Создание нового языка:
php artisan language:add en
- Добавление нового перевода:
Language::set('service.id.name', 'nameMyService', 'en');
- Чтение нового перевода:
$myValue = Language::get('service.id.name', 'en'); // nameMyService
или
$myValue = __('service')['id']['name']; // nameMyService
Второй вариант будет работать правильно, только если выбран правильный язык, т.к. в дефолтном варианте нельзя указать язык, с которого нужно получить перевод.
- Редактирование (перезаписывание):
Language::set('service.id.name', 'nameMyNewService', 'en');
- Удаление:
Language::delete('service.id.name', 'en');
Как это работает
В первом пункте мы создаём файл с названием языка: resources/lang/en.json
При добавлении или перезаписывании перевода, файл редактируется и приходит к виду:
{ "service": { "id": { "name": "nameMyService" } } }