| Recommend this page to a friend! | 
|  Download | 
| Info | Documentation |  Files |  Install with Composer |  Download | Reputation | Support forum | Blog | Links | 
| Last Updated | Ratings | Unique User Downloads | Download Rankings | |||||
| 2024-04-05 (11 months ago)  | Not enough user ratings | Total: 52 | All time:  10,676 This week: 43  | |||||
| Version | License | PHP version | Categories | |||
| multi-lang 1.0 | MIT/X Consortium ... | 8 | Localization, Cache, PHP 8 | 
| Description | Author | |
| This package can get texts to use in multilanguage applications. | 
A simple package to manage multi-language in your project.
composer require mateodioev/multi-lang
File en.json:
{
    "english_name": "English",
    "name": "Spanish",
    "data": {
        "welcome": "Welcome {full_name} to our website",
        "goodbye": "Goodbye dear {full_name}"
    }
}
File es.json:
{
    "english_name": "Spanish",
    "name": "Español",
    "data": {
        "welcome": "Bienvenido {full_name} a nuestro sitio web",
        "goodbye": "Adiós querido {full_name}"
    }
}
use Mateodioev\MultiLang\Cache\InMemoryCache;
use Mateodioev\MultiLang\Lang;
Lang::setup(
    dir: __DIR__ . '/resources/lang',
    cache: new InMemoryCache() // Optional
);
// If the key does not exist it will return null
Lang::get('es')->data('welcome')?->format(['full_name' => 'Mateo']);
// Output: Bienvenido Mateo a nuestro sitio web
You can validate the files to check if they have the correct format. > WARNING: Not use in production. This load and parse all the files
Lang::compareData();
|  Files (24) | 
| File | Role | Description | ||
|---|---|---|---|---|
|  src (6 files, 3 directories) | ||||
|    .editorconfig | Data | Auxiliary data | ||
|    .php-cs-fixer.dist.php | Example | Example script | ||
|    composer.json | Data | Auxiliary data | ||
|    LICENSE | Lic. | License text | ||
|    readme.md | Doc. | Documentation | ||
|  Files (24) | / | src | 
| File | Role | Description | ||
|---|---|---|---|---|
|  Cache (3 files) | ||||
|  Exceptions (8 files) | ||||
|  Parser (2 files) | ||||
|  Builder.php | Class | Class source | ||
|  BulkBuilder.php | Class | Class source | ||
|  DataAccessor.php | Class | Class source | ||
|  Lang.php | Class | Class source | ||
|  Language.php | Class | Class source | ||
|  Parser.php | Class | Class source | ||
|  Files (24) | / | src | / | Cache | 
| File | Role | Description | 
|---|---|---|
|  Cache.php | Class | Class source | 
|  InMemoryCache.php | Class | Class source | 
|  NullCache.php | Class | Class source | 
|  Files (24) | / | src | / | Exceptions | 
| File | Role | Description | 
|---|---|---|
|  EmptyDirectoryException.php | Class | Class source | 
|  FileException.php | Class | Class source | 
|  InvalidDirectoryException.php | Class | Class source | 
|  InvalidFormatParamsException.php | Class | Class source | 
|  LanguageDataMismatchException.php | Class | Class source | 
|  LanguageTokenMismatchException.php | Class | Class source | 
|  MultiLangExceptionInterface.php | Class | Class source | 
|  RequiredParamException.php | Class | Class source | 
|  Files (24) | / | src | / | Parser | 
| File | Role | Description | 
|---|---|---|
|  FileParser.php | Class | Class source | 
|  StringParser.php | Class | Class source | 
| The PHP Classes site has supported package installation using the Composer tool since 2013, as you may verify by reading this instructions page. | 
|  Install with Composer | 
| Version Control | Unique User Downloads | Download Rankings | |||||||||||||||
| 100% | 
 | 
 | 
| Applications that use this package | 
 If you know an application of this package, send a message to the author to add a link here.
 If you know an application of this package, send a message to the author to add a link here.