DefaultTranslator deprecated
class DefaultTranslator implements TranslatorInterface
deprecated
Simple translator implementation that simply replaces the parameters in the message IDs.
Example usage:
$translator = new DefaultTranslator();
echo $translator->trans(
'This is a {{ var }}.',
array('{{ var }}' => 'donkey')
);
// -> This is a donkey.
echo $translator->transChoice(
'This is {{ count }} donkey.|These are {{ count }} donkeys.',
3,
array('{{ count }}' => 'three')
);
// -> These are three donkeys.
This translator does not support message catalogs, translation domains or locales. Instead, it implements a subset of the capabilities of {@link \Symfony\Component\Translation\Translator} and can be used in places where translation is not required by default but should be optional.
Methods
string | trans(string $id, array $parameters = array(), string|null $domain = null, string|null $locale = null) Interpolates the given message. | |
string | transChoice(string $id, int $number, array $parameters = array(), string|null $domain = null, string|null $locale = null) Interpolates the given choice message by choosing a variant according to a number. | |
setLocale(string $locale) Not supported. | ||
string | getLocale() Returns the locale of the translator. |
Details
string trans(string $id, array $parameters = array(), string|null $domain = null, string|null $locale = null)
Interpolates the given message.
Parameters are replaced in the message in the same manner that {@link strtr()} uses.
Example usage:
$translator = new DefaultTranslator();
echo $translator->trans(
'This is a {{ var }}.',
array('{{ var }}' => 'donkey')
);
// -> This is a donkey.
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 |
string transChoice(string $id, int $number, array $parameters = array(), string|null $domain = null, string|null $locale = null)
Interpolates the given choice message by choosing a variant according to a number.
The variants are passed in the message ID using the format "
This format is consistent with the format supported by {@link \Symfony\Component\Translation\Translator}, but it does not have the same expressiveness. While Translator supports intervals in message translations, which are needed for languages other than English, this translator does not. You should use Translator or a custom implementation of {@link \Symfony\Component\Translation\TranslatorInterface} if you need this or similar functionality.
Example usage:
echo $translator->transChoice(
'This is {{ count }} donkey.|These are {{ count }} donkeys.',
0,
array('{{ count }}' => 0)
);
// -> These are 0 donkeys.
echo $translator->transChoice(
'This is {{ count }} donkey.|These are {{ count }} donkeys.',
1,
array('{{ count }}' => 1)
);
// -> This is 1 donkey.
echo $translator->transChoice(
'This is {{ count }} donkey.|These are {{ count }} donkeys.',
3,
array('{{ count }}' => 3)
);
// -> These are 3 donkeys.
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 indice 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 message id does not have the format "singular|plural". |
setLocale(string $locale)
Not supported.
Parameters
string | $locale | The locale |
Exceptions
BadMethodCallException |
string getLocale()
Returns the locale of the translator.
Return Value
string | The locale |
© 2004–2017 Fabien Potencier
Licensed under the MIT License.
http://api.symfony.com/4.0/Symfony/Component/Validator/DefaultTranslator.html