Download the PHP package cheecodes/language-detection without Composer
On this page you can find all versions of the php package cheecodes/language-detection. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package language-detection
Laravel Language Loader
This package allows you to set the application language based on request parameters like Accept-Language, a cookie, the session values. You can easily extend the detection with your own loaders aswell.
Installation
You can install the package via composer:
You should then publish the config
Usage
Globally
If you want to use the Middleware globally, you can register it in App\Http\Kernel
like this
Aliasing
To use an alias for this middleware, register it in your $routeMiddleware
in the Kernel
Different stack of loaders
The DetectLanguage
Middleware accepts a parameter that determines the group of loaders to be used.
Those groups can be defined in the config like this:
The names can be chosen as you see fit.
To use your custom loader stack, I firstly recommend you alias the middleware to something like language
.
You can then use it in your routes file like this:
Writing your own loader
Writing your own loader is straightforward. All you need to do is write a class that implements CheeCodes\LanguageDetection\Loader\LoaderContract
.
This interface only exposes one single method:
All you need to do is return a language key if your loader matched, or null
if it didn't.
If you return a string and that string is in the allowed languages array, loader processing is stopped.
If you return null, the next loader is called or the default language is used if no further loader is in the current stack.
To register your custom loader, just add the FQDN to the loader stack:
The loaders are resolved with Laravels IoC Container, so you can easily use constructor injection like you're used to.
Testing
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 [email protected] instead of using the issue tracker.
Credits
- Fabian Bettag
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
Laravel Package Boilerplate
This package was generated using the Laravel Package Boilerplate.
All versions of language-detection with dependencies
illuminate/support Version ^5.8|^6.0|^7
laravel/framework Version ^5.8|^6.0|^7