Browse Source

Minor refactoring of t().

tags/2.0.0-beta
Qiang Xue 12 years ago
parent
commit
6c7672c562
  1. 5
      framework/yii/YiiBase.php
  2. 9
      framework/yii/i18n/I18N.php

5
framework/yii/YiiBase.php

@ -606,10 +606,7 @@ class YiiBase
public static function t($category, $message, $params = array(), $language = null) public static function t($category, $message, $params = array(), $language = null)
{ {
if (self::$app !== null) { if (self::$app !== null) {
if ($language === null) { return self::$app->getI18N()->translate($category, $message, $params, $language ?: self::$app->language);
$language = self::$app->language;
}
return self::$app->getI18N()->translate($category, $message, $language);
} else { } else {
return is_array($params) ? strtr($message, $params) : $message; return is_array($params) ? strtr($message, $params) : $message;
} }

9
framework/yii/i18n/I18N.php

@ -78,16 +78,11 @@ class I18N extends Component
* @param string $category the message category. * @param string $category the message category.
* @param string $message the message to be translated. * @param string $message the message to be translated.
* @param array $params the parameters that will be used to replace the corresponding placeholders in the message. * @param array $params the parameters that will be used to replace the corresponding placeholders in the message.
* @param string $language the language code (e.g. `en_US`, `en`). If this is null, the current * @param string $language the language code (e.g. `en_US`, `en`).
* [[\yii\base\Application::language|application language]] will be used.
* @return string the translated message. * @return string the translated message.
*/ */
public function translate($category, $message, $params = array(), $language = null) public function translate($category, $message, $params, $language)
{ {
if ($language === null) {
$language = Yii::$app->language;
}
$message = $this->getMessageSource($category)->translate($category, $message, $language); $message = $this->getMessageSource($category)->translate($category, $message, $language);
if (!is_array($params)) { if (!is_array($params)) {

Loading…
Cancel
Save