orkhanahmadov/laravel-accept-language-middleware

Laravel middleware for setting application locale based on HTTP Accept-Language header

2.3.0 2024-03-27 10:42 UTC

This package is auto-updated.

Last update: 2024-11-27 12:02:57 UTC


README

Latest Stable Version Latest Unstable Version Total Downloads GitHub license

Build Status Test Coverage Maintainability Quality Score StyleCI

Laravel middleware for automatically setting application locale based on HTTP "Accept-Language" header

Requirements

  • PHP 8.0 or higher.
  • Laravel ^8.0, ^9.0 or higher

Installation

You can install the package via composer:

composer require orkhanahmadov/laravel-accept-language-middleware

Usage

Register \Orkhanahmadov\LaravelAcceptLanguageMiddleware\Middleware::class middleware in application's HTTP Kernel.

You can install it as global middleware in Kernel's $middleware property:

protected $middleware = [
    ...
    \Orkhanahmadov\LaravelAcceptLanguageMiddleware\Middleware::class
];

You can install it to specific middleware groups in Kernel's $middlewareGroups property:

protected $middlewareGroups = [
    'web' => [
        ...
        \Orkhanahmadov\LaravelAcceptLanguageMiddleware\Middleware::class
    ]
];

Or you can install is as route middleware in Kernel's $routeMiddleware and use it manually in routes:

Kernel:

protected $routeMiddleware = [
    ...
    'accept-language' => \Orkhanahmadov\LaravelAcceptLanguageMiddleware\Middleware::class
];

Route file

Route::middleware(['accept-language'])->get('/', 'MyController@index');

Testing

composer test

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security

If you discover any security related issues, please email ahmadov90@gmail.com instead of using the issue tracker.

Credits

License

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