Localize
Localize is an
internationalization
toolbox with
Gettext
wrapper, Extractors, Unicode
CLDR.
and some internationalization
ISO
codes.
Gettext wrapper
Translator and GettextEmulator are redcat's OOP adapation of
php-gettext
library.
This library provides PHP functions to read MO files even when gettext is not compiled in or when appropriate locale is not present on the system.
The structure of locales is $projectHome/langs/$lang/LC_MESSAGES/messages.mo, eg: www/langs/fr/LC_MESSAGES/messages.mo. It support cache regeneration without restart apache by dint of use a copy of MO file named with timestamp suffix. To enable look for last message.$time.mo set dev to true. You'll have to create this file manualy or with other i18n tool. Translator::getInstance()->dev = true;
You can include "__.php" to use procedural function based on
RedCat\Localize\Translator
static current instance. echo __($msgid);
echo n__($singular,$plural,$number);
CLDR - Punic
Punic - PHP translation and localization made easy. It contain internationalization data for language, calendar, territory, number, unit, phone, currency, plural and misc. Punic is a third party CLDR. library. See the official Punic documentation.