2017 © Pedro Peláez
 

library lang

PHP Multilanguage System

image

undercloud/lang

PHP Multilanguage System

  • Wednesday, April 13, 2016
  • by undercloud
  • Repository
  • 1 Watchers
  • 1 Stars
  • 1 Installations
  • PHP
  • 1 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 1 Versions
  • 0 % Grown

The README.md

Lang

PHP Multilanguage System, (*1)

install

composer require undercloud/lang, (*2)

translates

// /en/message.php
return [
    'hello' => 'Hello, :username',
    'hobbies' => 'Your hobbies is: :hobbies'
];

setup

require 'vendor/autoload.php';

$lang = new Undercloud\Lang([
    // translates path
    'root' => '/path/to/translates',
    // list of user accepted, default parse http header Accept-Language
    'accept' => ['en', 'de'],
    // list of supported translates
    'avail' => ['en','fr','de'],
    // setup translates file handler, default PHP Arrays
    'parser' => new Undercloud\Lang\Parser\AbstractParser
]);

// Hello, John
$lang('message.hello', ['username' => 'John']);

//Your hobbies is: music, football, web
$lang('message.hobbies', ['hobbies': ['music', 'football', 'web']]);

api

// parse Accept-Language header and return supported locales
$lang->getLangsHttp();

// return primary locale name
$lang->getPrimaryLocale();

// return fallback locale
$lang->getFallBackLocale();

parser

By default avail two type of language files parsers Undercloud\Lang\Parser\DefaultParser and Undercloud\Lang\Parser\JsonParser, You can define you'r own parser:, (*3)

// file based parser
use Undercloud\Lang\Parser\AbstractParser;

class MyOwnParser extends AbstractParser
{
    public function parse()
    {
        $path = func_get_arg(0) . '.extension';
        /*...*/
    }
}

or, (*4)

// database like parser
use Undercloud\Lang\Parser\AbstractParser;

class MyOwnParser extends AbstractParser
{
    public $buildPath = false;

    public function parse()
    {
        $locale = func_get_arg(0);
        $entity = func_get_arg(1);

        /*...*/
    }
}

The Versions

13/04 2016

dev-master

9999999-dev https://github.com//undercloud/lang

PHP Multilanguage System

  Sources   Download

MIT

The Requires

  • php >=5.3.0

 

by Avatar undercloud

language translate lang