Download the PHP package spatie/laravel-translation-loader without Composer
On this page you can find all versions of the php package spatie/laravel-translation-loader. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download spatie/laravel-translation-loader
More information about spatie/laravel-translation-loader
Files in spatie/laravel-translation-loader
Package laravel-translation-loader
Short Description Store your language lines in the database, yaml or other sources
License MIT
Homepage https://github.com/spatie/laravel-translation-loader
Informations about the package laravel-translation-loader
Store your language lines in the database
In a vanilla Laravel or Lumen installation, you can use language files to
localize your app. This package will enable the translations to be stored in the database. You can still use all the
features of the __
helper function you know
and love.
You can even mix using language files and the database. If a translation is present in both a file and the database, the database version will be returned.
Want to use a different source for your translations? No problem! The package is easily extendable.
Spatie is a web design agency based in Antwerp, Belgium. You'll find an overview of all our open source projects on our website.
Support us
We invest a lot of resources into creating best in class open source packages. You can support us by buying one of our paid products.
We highly appreciate you sending us a postcard from your hometown, mentioning which of our package(s) you are using. You'll find our address on our contact page. We publish all received postcards on our virtual postcard wall.
Installation
You can install the package via composer:
In config/app.php
(Laravel) or bootstrap/app.php
(Lumen) you should replace Laravel's translation service provider
by the one included in this package:
You must publish and run the migrations to create the language_lines
table:
Optionally, you could publish the config file using this command.
This is the contents of the published config file:
Note: publishing assets doesn't work out of the box in Lumen. Instead, you have to copy the files from the repo.
Usage
You can create a translation in the database by creating and saving an instance of
the Spatie\TranslationLoader\LanguageLine
-model:
You can fetch the translation
with Laravel's default __
function:
You can still keep using the default language files as well. If a requested translation is present in both the database and the language files, the database version will be returned.
If you need to store/override JSON translation lines, just create a normal LanguageLine with group => '*'
.
Creating your own translation providers
This package ships with a translation provider that can fetch translations from the database. If you're storing your translations in a yaml-file, a csv-file, etc., you can easily extend this package by creating your own translation provider.
A translation provider can be any class that implements
the Spatie\TranslationLoader\TranslationLoaders\TranslationLoader
-interface. It contains only one method:
Translation providers can be registered in the translation_loaders
key of the config file.
Changelog
Please see CHANGELOG for more information about what has changed recently.
Testing
Contributing
Please see CONTRIBUTING for details.
Security
If you've found a bug regarding security, please mail [email protected] instead of using the issue tracker.
Credits
- Freek Van der Herten
- All Contributors
License
The MIT License (MIT). Please see License File for more information.