Name Last Update
..
Catalogue Loading commit data...
DataCollector Loading commit data...
Dumper Loading commit data...
Exception Loading commit data...
Extractor Loading commit data...
Loader Loading commit data...
Tests Loading commit data...
Writer Loading commit data...
.gitignore Loading commit data...
CHANGELOG.md Loading commit data...
DataCollectorTranslator.php Loading commit data...
IdentityTranslator.php Loading commit data...
Interval.php Loading commit data...
LICENSE Loading commit data...
LoggingTranslator.php Loading commit data...
MessageCatalogue.php Loading commit data...
MessageCatalogueInterface.php Loading commit data...
MessageSelector.php Loading commit data...
MetadataAwareInterface.php Loading commit data...
PluralizationRules.php Loading commit data...
README.md Loading commit data...
Translator.php Loading commit data...
TranslatorBagInterface.php Loading commit data...
TranslatorInterface.php Loading commit data...
composer.json Loading commit data...
phpunit.xml.dist Loading commit data...

Translation Component

Translation provides tools for loading translation files and generating translated strings from these including support for pluralization.

use Symfony\Component\Translation\Translator;
use Symfony\Component\Translation\MessageSelector;
use Symfony\Component\Translation\Loader\ArrayLoader;

$translator = new Translator('fr_FR', new MessageSelector());
$translator->setFallbackLocales(array('fr'));
$translator->addLoader('array', new ArrayLoader());
$translator->addResource('array', array(
    'Hello World!' => 'Bonjour',
), 'fr');

echo $translator->trans('Hello World!')."\n";

Resources

Silex integration:

https://github.com/fabpot/Silex/blob/master/src/Silex/Provider/TranslationServiceProvider.php

Documentation:

https://symfony.com/doc/2.7/book/translation.html

You can run the unit tests with the following command:

$ cd path/to/Symfony/Component/Translation/
$ composer install
$ phpunit