本文整理汇总了PHP中Zend\Translator\Translator::addTranslation方法的典型用法代码示例。如果您正苦于以下问题:PHP Translator::addTranslation方法的具体用法?PHP Translator::addTranslation怎么用?PHP Translator::addTranslation使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend\Translator\Translator
的用法示例。
在下文中一共展示了Translator::addTranslation方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setUp
/**
* Setup test
*
* @return void
*/
public function setUp()
{
// Backup server array
$this->_server = $_SERVER;
// Clean host env
unset($_SERVER['HTTP_HOST'], $_SERVER['HTTPS'], $_SERVER['SERVER_NAME'], $_SERVER['SERVER_PORT']);
// Set translator
$translator = new Translator\Translator('arrayAdapter', array('foo' => 'en_foo', 'bar' => 'en_bar'), 'en');
$translator->addTranslation(array('foo' => 'de_foo', 'bar' => 'de_bar'), 'de');
$translator->setLocale('en');
\Zend\Registry::set('Zend_Translate', $translator);
}
示例2: testDoubleReroutingForTranslations
/**
* @group ZF-2736
*/
public function testDoubleReroutingForTranslations()
{
$translate = new Translator\Translator(array('adapter' => Translator\Translator::AN_ARRAY, 'content' => __DIR__ . '/Adapter/_files/testarray/', 'locale' => 'auto', 'scan' => Translator\Translator::LOCALE_FILENAME, 'ignore' => array('.', 'ignoreme', 'LC_TEST'), 'route' => array('ja' => 'en_US', 'en_US' => 'ja')));
$translate2 = new Translator\Translator(array('adapter' => Translator\Translator::AN_CSV, 'content' => __DIR__ . '/Adapter/_files/translation_en.csv', 'locale' => 'en_US'));
$translate->addTranslation($translate2);
$langs = $translate->getList();
$this->assertFalse(array_key_exists('de_DE', $langs));
$this->assertTrue(array_key_exists('ja', $langs));
$this->assertTrue(array_key_exists('en_US', $langs));
$this->assertEquals('Message 5 (en)', $translate->translate('Message 5', 'ja'));
$this->assertEquals('Message 5 (en)', $translate->translate('Message 5', 'ja'));
}
示例3: testCanTranslateWithOptions
public function testCanTranslateWithOptions()
{
$trans = new Translator\Translator('arrayAdapter', array('one' => 'eins', "two %1\$s" => "zwei %1\$s", "three %1\$s %2\$s" => "drei %1\$s %2\$s"), 'de');
$trans->addTranslation(array('one' => 'uno', "two %1\$s" => "duo %2\$s", "three %1\$s %2\$s" => "tre %1\$s %2\$s"), 'it');
$trans->setLocale('de');
$this->helper->setTranslator($trans);
$this->assertEquals("drei 100 200", $this->helper->direct("three %1\$s %2\$s", "100", "200"));
$this->assertEquals("tre 100 200", $this->helper->direct("three %1\$s %2\$s", "100", "200", 'it'));
$this->assertEquals("drei 100 200", $this->helper->direct("three %1\$s %2\$s", array("100", "200")));
$this->assertEquals("tre 100 200", $this->helper->direct("three %1\$s %2\$s", array("100", "200"), 'it'));
}
示例4: testRoutingOnHttpHeader
/**
* @group ZF-10911
*/
public function testRoutingOnHttpHeader()
{
$translate = new Translator\Translator(
array(
'adapter' => Translator\Translator::AN_ARRAY,
'content' => __DIR__ . '/Adapter/_files/testarray/',
'locale' => 'auto',
'scan' => Translator\Translator::LOCALE_FILENAME,
'ignore' => array('.', 'ignoreme', 'LC_OTHER'),
// needed because browser settings can not be simulated in phpunit
'route' => array('ja' => 'de_AT', 'de_AT' => 'de_DE', 'de_DE' => 'en_US'),
'routeHttp' => true,
)
);
$translate2 = new Translator\Translator(
array(
'adapter' => Translator\Translator::AN_CSV,
'content' => __DIR__ . '/Adapter/_files/translation_en.csv',
'locale' => 'en_US',
)
);
$translate->addTranslation($translate2);
$langs = $translate->getList();
$this->assertFalse(array_key_exists('de_AT', $langs));
$this->assertTrue(array_key_exists('ja', $langs));
$this->assertTrue(array_key_exists('en_US', $langs));
$this->assertEquals('Message 5 (en)', $translate->translate('Message 5', 'ja'));
}
示例5: testAddingAdapterToSourcealsUsingOwnRule
/**
* @group ZF-9489
*/
public function testAddingAdapterToSourcealsUsingOwnRule()
{
$translate = new Translator\Translator(Translator\Translator::AN_ARRAY, array('singular' => array('plural_0 (en)', 'plural_1 (en)', 'plural_2 (en)', 'plural_3 (en)'), 'plural' => ''), 'en');
$this->assertFalse($translate->isTranslated('Message 1'));
$adapter = new Adapter\Gettext(dirname(__FILE__) . '/Adapter/_files/translation_en.mo', 'en');
$translate->addTranslation($adapter);
$this->assertTrue($adapter->isTranslated('Message 1'));
$adapter2 = new Adapter\Gettext(dirname(__FILE__) . '/Adapter/_files/testmo/de_AT/LC_TEST/translation-de_DE.mo', 'de_AT');
$adapter2->addTranslation(dirname(__FILE__) . '/Adapter/_files/translation_en2.mo', 'fr');
$translate->addTranslation($adapter2, 'fr');
$languages = $translate->getList();
$this->assertFalse(array_key_exists('de_AT', $languages));
$this->assertTrue(array_key_exists('fr', $languages));
}