annotate vendor/symfony/translation/IdentityTranslator.php @ 8:50b0d041100e
Further files for download
author |
Chris Cannam |
date |
Mon, 05 Feb 2018 10:56:40 +0000 |
parents |
4c8ae668cc8c |
children |
1fec387a4317 |
rev |
line source |
Chris@0
|
1 <?php
|
Chris@0
|
2
|
Chris@0
|
3 /*
|
Chris@0
|
4 * This file is part of the Symfony package.
|
Chris@0
|
5 *
|
Chris@0
|
6 * (c) Fabien Potencier <fabien@symfony.com>
|
Chris@0
|
7 *
|
Chris@0
|
8 * For the full copyright and license information, please view the LICENSE
|
Chris@0
|
9 * file that was distributed with this source code.
|
Chris@0
|
10 */
|
Chris@0
|
11
|
Chris@0
|
12 namespace Symfony\Component\Translation;
|
Chris@0
|
13
|
Chris@0
|
14 /**
|
Chris@0
|
15 * IdentityTranslator does not translate anything.
|
Chris@0
|
16 *
|
Chris@0
|
17 * @author Fabien Potencier <fabien@symfony.com>
|
Chris@0
|
18 */
|
Chris@0
|
19 class IdentityTranslator implements TranslatorInterface
|
Chris@0
|
20 {
|
Chris@0
|
21 private $selector;
|
Chris@0
|
22 private $locale;
|
Chris@0
|
23
|
Chris@0
|
24 /**
|
Chris@0
|
25 * Constructor.
|
Chris@0
|
26 *
|
Chris@0
|
27 * @param MessageSelector|null $selector The message selector for pluralization
|
Chris@0
|
28 */
|
Chris@0
|
29 public function __construct(MessageSelector $selector = null)
|
Chris@0
|
30 {
|
Chris@0
|
31 $this->selector = $selector ?: new MessageSelector();
|
Chris@0
|
32 }
|
Chris@0
|
33
|
Chris@0
|
34 /**
|
Chris@0
|
35 * {@inheritdoc}
|
Chris@0
|
36 */
|
Chris@0
|
37 public function setLocale($locale)
|
Chris@0
|
38 {
|
Chris@0
|
39 $this->locale = $locale;
|
Chris@0
|
40 }
|
Chris@0
|
41
|
Chris@0
|
42 /**
|
Chris@0
|
43 * {@inheritdoc}
|
Chris@0
|
44 */
|
Chris@0
|
45 public function getLocale()
|
Chris@0
|
46 {
|
Chris@0
|
47 return $this->locale ?: \Locale::getDefault();
|
Chris@0
|
48 }
|
Chris@0
|
49
|
Chris@0
|
50 /**
|
Chris@0
|
51 * {@inheritdoc}
|
Chris@0
|
52 */
|
Chris@0
|
53 public function trans($id, array $parameters = array(), $domain = null, $locale = null)
|
Chris@0
|
54 {
|
Chris@0
|
55 return strtr((string) $id, $parameters);
|
Chris@0
|
56 }
|
Chris@0
|
57
|
Chris@0
|
58 /**
|
Chris@0
|
59 * {@inheritdoc}
|
Chris@0
|
60 */
|
Chris@0
|
61 public function transChoice($id, $number, array $parameters = array(), $domain = null, $locale = null)
|
Chris@0
|
62 {
|
Chris@0
|
63 return strtr($this->selector->choose((string) $id, (int) $number, $locale ?: $this->getLocale()), $parameters);
|
Chris@0
|
64 }
|
Chris@0
|
65 }
|