LaravelPackages.net
Acme Inc.
Toggle sidebar
m1sh0u/laravel-polyglot-translator

Polyglot.php translator for Laravel

2
1
v1.1
About m1sh0u/laravel-polyglot-translator

m1sh0u/laravel-polyglot-translator is a Laravel package for polyglot.php translator for laravel. It currently has 1 GitHub stars and 2 downloads on Packagist (latest version v1.1). Install it with composer require m1sh0u/laravel-polyglot-translator. Discover more Laravel packages by m1sh0u or browse all Laravel packages to compare alternatives.

Last updated

Laravel Polyglot.php Translator

Latest Version on Packagist Software License Code Quality Total Downloads

Installing this package will enable using Polyglot.php to translate phrases through a Laravel application.

When installed, the trans and trans_choice will use the Polyglot.php library to translate the given phrases:

trans('Hello, %{placeholder}', ['placeholder' => 'World']);
trans('1 vote %{period} |||| %{smart_count} votes %{period}', ['smart_count' => 4, 'period' => 'today'])

trans_choice('1 vote %{period} |||| %{smart_count} votes %{period}', 4, ['period' => 'today']);

Installation

You can install the package via composer:

composer require m1sh0u/laravel-polyglot-translator

In config/app.php (Laravel) or bootstrap/app.php (Lumen) you should replace Laravel's translation service provider,

Illuminate\Translation\TranslationServiceProvider::class,

by the one included in this package:

LaravelPolyglot\Providers\TranslationServiceProvider

Optionally you could publish the config file using the command:

php artisan vendor:publish --provider="LaravelPolyglot\Providers\TranslationServiceProvider" --tag="config"

This is the contents of the published config file:

return [
    // @see https://github.com/M1Sh0u/polyglot.php for the meaning of each polyglot configuration parameter
    'polyglot' => [
        
        'allowMissing' => true,
        'delimiter' => '||||',
        'interpolation' => [
            'prefix' => '%{',
            'suffix' => '}'
        ],
        'pluralRules' => [],

        // Set a callback function to be called whenever a missing key is found.
        // It could be useful if you need to store the missing keys into the database or to do something else.
        // Please note that the return of this callback will be the actual string returned by the translator. @see https://github.com/M1Sh0u/polyglot.php
        'onMissingKey' => null,
        'onMissingKeyEnvs' => ['local', 'staging']
    ]
];

Note: publishing assets doesn't work out of the box in Lumen. Instead you have to copy the files from the repo.

Usage

For more information about Polyglot.php' capabilities please follow its documentation

License

The MIT License (MIT). Please see License File for more information.

Star History Chart