Exemplo n.º 1
0
 /**
  * 返回一个翻译字符串结构
  *
  * @param string $token 传递给之类的解析
  */
 protected function getTokenString($token)
 {
     if (isset($this->data[$this->locale][$token])) {
         return parent::translate($this->data[$this->locale][$token]);
     } else {
         return $token;
     }
 }
Exemplo n.º 2
0
 /**
  * 返回一个翻译字符串结构
  *
  * @param string $token 传递给之类的解析
  */
 protected function getTokenString($token)
 {
     //无配对时,返回的是array
     if ($this->iniDriver[$this->locale]->getByKey($token) !== array()) {
         return parent::translate($this->iniDriver[$this->locale]->getByKey($token));
     } else {
         return $token;
     }
 }
Exemplo n.º 3
0
 private function testIni()
 {
     $adapter = array('adapter' => 'ini', 'path' => LIB_PATH . 'Lang' . SEP . 'Test' . SEP, 'default' => \HuiLib\Lang\LangBase::DEFAULT_LOCALE);
     $lang = \HuiLib\Lang\LangBase::create($adapter);
     echo $lang->translate('HuiLib.lang.test', '芸临网');
     echo "<br>";
     echo $lang->translate('HuiLib.lang.testNotExist', '芸临网');
     echo "<br>_test:<br>";
     echo $lang->_('HuiLib.lang.test', '芸临网');
 }
Exemplo n.º 4
0
 /**
  * 获取调用HuiLib库的翻译实例
  * 
  * 默认存在Lang/I18N目录下
  */
 public static function getHuiLibLang($lang = NULL)
 {
     $adapter = array('adapter' => 'gettext', 'path' => LIB_PATH . 'Lang' . SEP . 'I18N' . SEP, 'default' => self::DEFAULT_LOCALE);
     self::$huiLibInstance = self::create($adapter);
     if ($lang) {
         self::$huiLibInstance->loadLang($lang);
     } else {
         self::$huiLibInstance->loadLang($adapter['default']);
     }
     return self::$huiLibInstance;
 }
Exemplo n.º 5
0
 public function getHuiLang($default = NULL)
 {
     if ($this->huiLang === NULL) {
         $this->huiLang = \HuiLib\Lang\LangBase::getHuiLibLang($default);
     }
     return $this->huiLang;
 }
Exemplo n.º 6
0
<?php

/**
 * HuiLib Lang库操作指南
 * 
 * @since 2013/11/10
 * 
 * Lang支持翻译器后端:GetText, Ini两个文件格式,推荐前种,二进制储存,有专门更新的工具
 * 
 * 适配器接口:
 * 		translate($token):请求翻译一个字串
 * 		translate($token, $param1, $param2, ...):请求翻译一个字串,并且支持sprintf格式变量解析
 * 
 *     复数翻译Zend接口
 *     $translate->plural("common.hour","common.hours",2);
 */
//快速获取一个Lang翻译器实例
$lang = \HuiLib\Lang\LangBase::getHuiLibLang();
//请求一个翻译
//多个参数,如果少个会怎么样?
$lang->translate('HuiLib.lang.test', '芸临网', 'hanhui', 1000, 3.55);