1. Go to this page and download the library: Download ipl/i18n library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ipl / i18n example snippets
use ipl\I18n\GettextTranslator;
use ipl\I18n\StaticTranslator;
$translator = (new GettextTranslator())
->addTranslationDirectory('/path/to/locales')
->setLocale('de_DE');
StaticTranslator::$instance = $translator;
use function ipl\I18n\t;
use function ipl\I18n\tp;
echo t('Save changes');
// $count selects the plural form, printf substitutes %d.
printf(tp('%d item', '%d items', $count), $count);
use ipl\I18n\Translation;
class MyModule
{
use Translation;
protected ?string $translationDomain = 'mydomain';
public function getLabel(): string
{
return $this->translate('Dashboard');
}
public function getItemLabel(int $count): string
{
// $count selects the plural form, sprintf substitutes %d.
return sprintf(
$this->translatePlural('%d item', '%d items', $count),
$count
);
}
}
use ipl\I18n\GettextTranslator;
$translator = (new GettextTranslator())
->addTranslationDirectory('/path/to/default/locales')
->addTranslationDirectory('/path/to/configuration/locales', 'configuration')
->setLocale('de_DE');
// Same source string, different translations depending on context:
// 'http' → an HTTP request
// 'change' → a change request
echo $translator->translate('request', 'http');
echo $translator->translate('request', 'change');
// Resolve messages from the `configuration` domain.
echo $translator->translateInDomain('configuration', 'configuration item');
printf(
$translator->translatePluralInDomain(
'configuration', '%d job', '%d jobs', 2, 'deployment queue'
),
2
);
use ipl\I18n\Locale;
$availableLocales = $translator->listLocales();
$preferredLocale = (new Locale())->getPreferred(
$_SERVER['HTTP_ACCEPT_LANGUAGE'] ?? '',
$availableLocales
);
$translator->setLocale($preferredLocale);
use ipl\I18n\NoopTranslator;
use ipl\I18n\StaticTranslator;
StaticTranslator::$instance = new NoopTranslator();
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.