Package for convenient work with Laravel's localization features and fast language files generation. Take a look at contributing.md to see a to do list.
Via Composer
$ composer require awes-io/localization-helperIn Laravel 5.5+, service provider and facade will be automatically registered. For older versions, follow the steps below:
Register service provider in config/app.php:
'providers' => [
// [...]
AwesIO\LocalizationHelper\LocalizationHelperServiceProvider::class,
],You may also register LaravelLocalization facade:
'aliases' => [
// [...]
'LocalizationHelper' => AwesIO\LocalizationHelper\Facades\LocalizationHelper::class,
],In order to edit default configuration you may execute:
php artisan vendor:publish --provider="AwesIO\LocalizationHelper\LocalizationHelperServiceProvider"
After that, config/localizationhelper.php will be created.
Package registers global helper function _p($file_key, $default, $placeholders):
_p('auth.login', 'Login'); // "Login"It will create new localization file auth.php (if it doesn't exist) and write second parameter as language string under login key:
return [
"login" => "Login"
];On second call with same file/key _p('auth.login'), localization string will be returned, file will remain untouched.
Placeholders are also supported:
_p(
'mail.invitation',
'Youβre invited to join :company company workspace',
['company' => 'Awesio']
);If key is returned, it means that string already exists in localization file and you are trying to add new one using its value as an array.
// in localization file.php
return [
"test" => "Test string"
];
_p('file.test.new', 'Test string'); // will return "file.test.new"
_p('file.test_2.new', 'Test string'); // will return "Test string"
// and modify localization file:
return [
"test" => "Test string",
"test_2" => [
"new" => "Test string"
]
];Please see the changelog for more information on what has changed recently.
$ composer testPlease see contributing.md for details and a todolist.
If you discover any security related issues, please email [email protected] instead of using the issue tracker.