class LoggingTranslator implements TranslatorInterface, TranslatorInterface, TranslatorBagInterface

Methods

__construct(TranslatorInterface $translator, LoggerInterface $logger)

No description

string
trans(string $id, array $parameters = array(), string|null $domain = null, string|null $locale = null)

Translates the given message.

string
transChoice(string $id, int $number, array $parameters = array(), string|null $domain = null, string|null $locale = null) deprecated

Translates the given choice message by choosing a translation according to a number.

setLocale(string $locale)

Sets the current locale.

string
getLocale()

Returns the current locale.

getCatalogue(string|null $locale = null)

Gets the catalogue by locale.

array
getFallbackLocales()

Gets the fallback locales.

__call($method, $args)

Passes through all unknown calls onto the translator object.

Details

__construct(TranslatorInterface $translator, LoggerInterface $logger)

Parameters

TranslatorInterface $translator The translator must implement TranslatorBagInterface
LoggerInterface $logger

string trans(string $id, array $parameters = array(), string|null $domain = null, string|null $locale = null)

Translates the given message.

When a number is provided as a parameter named "%count%", the message is parsed for plural forms and a translation is chosen according to this number using the following rules:

Given a message with different plural translations separated by a pipe (|), this method returns the correct portion of the message based on the given number, locale and the pluralization rules in the message itself.

The message supports two different types of pluralization rules:

interval: {0} There are no apples|{1} There is one apple|]1,Inf] There are %count% apples indexed: There is one apple|There are %count% apples

The indexed solution can also contain labels (e.g. one: There is one apple). This is purely for making the translations more clear - it does not affect the functionality.

The two methods can also be mixed: {0} There are no apples|one: There is one apple|more: There are %count% apples

An interval can represent a finite set of numbers: {1,2,3,4}

An interval can represent numbers between two numbers: [1, +Inf] ]-1,2[

The left delimiter can be [ (inclusive) or ] (exclusive). The right delimiter can be [ (exclusive) or ] (inclusive). Beside numbers, you can use -Inf and +Inf for the infinite.

Parameters

string $id The message id (may also be an object that can be cast to string)
array $parameters An array of parameters for the message
string|null $domain The domain for the message or null to use the default
string|null $locale The locale or null to use the default

Return Value

string The translated string

Exceptions

InvalidArgumentException If the locale contains invalid characters

string transChoice(string $id, int $number, array $parameters = array(), string|null $domain = null, string|null $locale = null) deprecated

deprecated since Symfony 4.2, use the trans() method instead with a %count% parameter

Translates the given choice message by choosing a translation according to a number.

Parameters

string $id The message id (may also be an object that can be cast to string)
int $number The number to use to find the index of the message
array $parameters An array of parameters for the message
string|null $domain The domain for the message or null to use the default
string|null $locale The locale or null to use the default

Return Value

string The translated string

Exceptions

InvalidArgumentException If the locale contains invalid characters

setLocale(string $locale)

Sets the current locale.

Parameters

string $locale The locale

Exceptions

InvalidArgumentException If the locale contains invalid characters

string getLocale()

Returns the current locale.

Return Value

string The locale

MessageCatalogueInterface getCatalogue(string|null $locale = null)

Gets the catalogue by locale.

Parameters

string|null $locale The locale or null to use the default

Return Value

MessageCatalogueInterface

Exceptions

InvalidArgumentException If the locale contains invalid characters

array getFallbackLocales()

Gets the fallback locales.

Return Value

array The fallback locales

__call($method, $args)

Passes through all unknown calls onto the translator object.

Parameters

$method
$args