Skip to content

PHP class for basic i18next functionality

Notifications You must be signed in to change notification settings

kopfwelt/i18next-php

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 

Repository files navigation

i18next-php

PHP class for basic i18next functionality.

Features

Usage

// init i18next instance
i18next::init('en');

// get translation by key
echo i18next::getTranslation('common.dog');

Methods

i18next::init( string $languageKey [, string $path ] );

Loads translation files from given path. Looks for translation.json by default.

i18next::init('en', 'my/path/');
// loads my/path/translation.json

You can also use variables and split namespaces and languages to different files.

i18next::init('en', 'languages/__lng__/__ns__.json');
// loads languages/en/common.json, languages/fi/common.json, etc...

Method throws an exception if no files are found or the json can not be parsed.

mixed i18next::getTranslation( string $key [, array $variables ] );

Returns translated string by key.

i18next::getTranslation('common.cat', array('count' => 2, 'lng' => 'fi'));

boolean i18next::existTranslation( string $key );

Checks if translated string exists.

void i18next::setLanguage( string $language [, string $fallback ] );

Changes language.

array i18next::getMissingTranslations();

Gets an array of missing translations.

array(1) {
    [0]=> array(2) {
        ["language"]=> string(2) "en"
        ["key"]=> string(14) "common.unknown"
    }
}

Multilines in JSON-arrays

You can have html content written with multilines in JSON File

{
	"en": {
		"common": {
			"thedoglovers":["The Dog Lovers by Spike Milligan",
"So they bought you",
"And kept you in a",
"Very good home"]
        }
	}
}

About

PHP class for basic i18next functionality

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%