Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
[READ-ONLY] Subtree split of the Symfony Translation Component -- clone into Symfony/Component/ (master at symfony/symfony)
PHP

Merge branch '2.8'

* 2.8:
  [2.8] Silence newest deprecations
  [FrameworkBundle] Reuse PropertyAccessor service for ObjectNormalizer
  [VarDumper] Fix dump output for better readability
  [PhpUnitBridge] Enforce @-silencing of deprecation notices according to new policy

Conflicts:
	src/Symfony/Bundle/FrameworkBundle/Tests/Console/Descriptor/AbstractDescriptorTest.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/Compiler/LegacyTemplatingAssetHelperPassTest.php
	src/Symfony/Bundle/FrameworkBundle/Tests/DependencyInjection/FrameworkExtensionTest.php
	src/Symfony/Bundle/FrameworkBundle/Tests/Templating/Helper/AssetsHelperTest.php
	src/Symfony/Bundle/TwigBundle/Tests/DependencyInjection/TwigExtensionTest.php
	src/Symfony/Bundle/TwigBundle/Tests/Extension/LegacyAssetsExtensionTest.php
	src/Symfony/Bundle/TwigBundle/Tests/TokenParser/LegacyRenderTokenParserTest.php
	src/Symfony/Component/ClassLoader/Tests/LegacyUniversalClassLoaderTest.php
	src/Symfony/Component/Console/Tests/ApplicationTest.php
	src/Symfony/Component/Console/Tests/Command/CommandTest.php
	src/Symfony/Component/Console/Tests/Helper/LegacyDialogHelperTest.php
	src/Symfony/Component/Console/Tests/Helper/LegacyProgressHelperTest.php
	src/Symfony/Component/Console/Tests/Helper/LegacyTableHelperTest.php
	src/Symfony/Component/Console/Tests/Input/InputDefinitionTest.php
	src/Symfony/Component/Console/Tests/Input/StringInputTest.php
	src/Symfony/Component/Debug/Tests/ErrorHandlerTest.php
	src/Symfony/Component/Debug/Tests/FatalErrorHandler/ClassNotFoundFatalErrorHandlerTest.php
	src/Symfony/Component/DependencyInjection/Tests/Compiler/CheckDefinitionValidityPassTest.php
	src/Symfony/Component/DependencyInjection/Tests/Compiler/LegacyResolveParameterPlaceHoldersPassTest.php
	src/Symfony/Component/DependencyInjection/Tests/ContainerBuilderTest.php
	src/Symfony/Component/DependencyInjection/Tests/DefinitionDecoratorTest.php
	src/Symfony/Component/DependencyInjection/Tests/DefinitionTest.php
	src/Symfony/Component/DependencyInjection/Tests/Dumper/GraphvizDumperTest.php
	src/Symfony/Component/DependencyInjection/Tests/Dumper/PhpDumperTest.php
	src/Symfony/Component/DependencyInjection/Tests/Dumper/XmlDumperTest.php
	src/Symfony/Component/DependencyInjection/Tests/Dumper/YamlDumperTest.php
	src/Symfony/Component/DependencyInjection/Tests/LegacyContainerBuilderTest.php
	src/Symfony/Component/DependencyInjection/Tests/LegacyDefinitionTest.php
	src/Symfony/Component/DependencyInjection/Tests/Loader/XmlFileLoaderTest.php
	src/Symfony/Component/DependencyInjection/Tests/Loader/YamlFileLoaderTest.php
	src/Symfony/Component/EventDispatcher/Tests/AbstractEventDispatcherTest.php
	src/Symfony/Component/EventDispatcher/Tests/EventTest.php
	src/Symfony/Component/Form/Tests/Extension/HttpFoundation/EventListener/LegacyBindRequestListenerTest.php
	src/Symfony/Component/HttpFoundation/Tests/Session/Flash/FlashBagTest.php
	src/Symfony/Component/HttpFoundation/Tests/Session/Storage/Handler/LegacyPdoSessionHandlerTest.php
	src/Symfony/Component/HttpKernel/Tests/DependencyInjection/FragmentRendererPassTest.php
	src/Symfony/Component/HttpKernel/Tests/EventListener/ProfilerListenerTest.php
	src/Symfony/Component/HttpKernel/Tests/KernelTest.php
	src/Symfony/Component/Locale/Tests/LocaleTest.php
	src/Symfony/Component/Locale/Tests/Stub/StubLocaleTest.php
	src/Symfony/Component/OptionsResolver/Tests/LegacyOptionsResolverTest.php
	src/Symfony/Component/OptionsResolver/Tests/LegacyOptionsTest.php
	src/Symfony/Component/Process/Tests/AbstractProcessTest.php
	src/Symfony/Component/Routing/Tests/Annotation/RouteTest.php
	src/Symfony/Component/Routing/Tests/Generator/UrlGeneratorTest.php
	src/Symfony/Component/Routing/Tests/Loader/XmlFileLoaderTest.php
	src/Symfony/Component/Routing/Tests/Loader/YamlFileLoaderTest.php
	src/Symfony/Component/Routing/Tests/Matcher/Dumper/LegacyApacheMatcherDumperTest.php
	src/Symfony/Component/Routing/Tests/Matcher/LegacyApacheUrlMatcherTest.php
	src/Symfony/Component/Routing/Tests/RouteTest.php
	src/Symfony/Component/Serializer/Tests/Normalizer/GetSetMethodNormalizerTest.php
	src/Symfony/Component/Serializer/Tests/Normalizer/ObjectNormalizerTest.php
	src/Symfony/Component/Serializer/Tests/Normalizer/PropertyNormalizerTest.php
	src/Symfony/Component/Templating/Tests/Helper/LegacyAssetsHelperTest.php
	src/Symfony/Component/Templating/Tests/Helper/LegacyCoreAssetsHelperTest.php
	src/Symfony/Component/Templating/Tests/Loader/LoaderTest.php
	src/Symfony/Component/Yaml/Tests/YamlTest.php
Failed to load latest commit information.
Catalogue Merge branch '2.5'
DataCollector [Translation][Profiler] reduce memory usage for collected messages.
Dumper [Translation] add options 'as_tree', 'inline' to YamlFileDumper to du…
Exception [Translation] uniformized the way exception are thrown in LoaderInter…
Extractor [Translation][Extractor] Allow extracting an array of files besides e…
Loader fix Merge branch '2.7' into 2.8 JsonFileLoader
Tests Merge branch '2.8'
Util [Translation] add options 'as_tree', 'inline' to YamlFileDumper to du…
Writer Merge branch '2.3' into 2.5
.gitignore Added missing files .gitignore
CHANGELOG.md [Translator] changed the visibility of the locale from protected to p…
DataCollectorTranslator.php [2.7][Translation] remove duplicate code for loading catalogue.
IdentityTranslator.php [Translation] make IdentityTranslater consistent with normal translator
Interval.php Docblock fixes
LICENSE Updated copyright to 2015
LoggingTranslator.php [2.6][Translation] remove duplicate code for loading catalogue.
MessageCatalogue.php unified return null usages
MessageCatalogueInterface.php Docblock fixes
MessageSelector.php Merge branch '2.3' into 2.6
MetadataAwareInterface.php Fix doc blocks
PluralizationRules.php Merge branch '2.3' into 2.5
README.md Merge branch '2.8'
Translator.php Merge branch '2.8'
TranslatorBagInterface.php [2.6][Translation] remove duplicate code for loading catalogue.
TranslatorInterface.php Merge branch '2.3' into 2.4
composer.json Merge branch '2.8'
phpunit.xml.dist [2.3] require-dev PHPUnit bridge

README.md

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/3.0/book/translation.html

You can run the unit tests with the following command:

$ cd path/to/Symfony/Component/Translation/
$ composer install
$ phpunit
Something went wrong with that request. Please try again.