jbzoo / lang
Lightweight library for easy translation based on simple formats (php arrays, json, yml, ini)
Installs: 2 004
Dependents: 1
Suggesters: 0
Security: 0
Stars: 5
Watchers: 3
Forks: 0
Open Issues: 0
Requires
- php: >=5.4
- jbzoo/data: ^1.3
- jbzoo/path: ^1.0
Requires (Dev)
- jbzoo/phpunit: ^1.0
This package is auto-updated.
Last update: 2020-05-20 00:10:08 UTC
README
Lightweight library for easy translation based on simple formats (php arrays, json, yml, ini)
Install
composer require jbzoo/lang:"1.x-dev" # Last version composer require jbzoo/lang # Stable version
Usage
require_once './vendor/autoload.php'; // composer autoload.php // Get needed classes use JBZoo\Lang\Lang; // Create $lang = new Lang('en'); // Pass language code (only two chars!) // Paths, modules, overload $lang->load('./somepath/glob/'); // ./somepath/glob/langs/en.php $lang->load('./somepath/glob/', 'module_name'); // ./somepath/glob/langs/en.module_name.php $lang->load('./somepath/module/', 'module_name'); // ./somepath/module/langs/en.module_name.php (overload previous) // Other formats $lang->load('./somepath/glob/', null, 'php'); // ./somepath/glob/langs/en.php $lang->load('./somepath/glob/', null, 'json'); // ./somepath/glob/langs/en.json $lang->load('./somepath/glob/', null, 'ini'); // ./somepath/glob/langs/en.ini $lang->load('./somepath/glob/', null, 'yml'); // ./somepath/glob/langs/en.yml (Symfony/Yaml) // Traslate $lang->translate('message_key'); // Only global $lang->translate('module_name.message_key'); // Check module "module_name" and after that global path
Speed of one(!) call method translate()
PHP 5.6.x - Minimum time ~0.05ms
PHP 7.0.x - Minimum time ~0.004ms
Unit tests and check code style
make make test-all
License
MIT