改进Lang类的detect方法 返回当前语言 取消 LANG_SET 常量

This commit is contained in:
thinkphp
2016-06-13 17:05:50 +08:00
parent 126bb348ca
commit 8b0078d936
3 changed files with 22 additions and 4 deletions

View File

@@ -68,11 +68,11 @@ class App
// 开启多语言机制
if ($config['lang_switch_on']) {
// 获取当前语言
defined('LANG_SET') or define('LANG_SET', Lang::range());
$request->langset(Lang::detect());
// 加载系统语言包
Lang::load(THINK_PATH . 'lang' . DS . LANG_SET . EXT);
Lang::load(THINK_PATH . 'lang' . DS . $request->langset() . EXT);
if (!APP_MULTI_MODULE) {
Lang::load(APP_PATH . 'lang' . DS . LANG_SET . EXT);
Lang::load(APP_PATH . 'lang' . DS . $request->langset() . EXT);
}
}
@@ -349,7 +349,7 @@ class App
// 加载当前模块语言包
if ($config['lang_switch_on'] && $module) {
Lang::load($path . 'lang' . DS . LANG_SET . EXT);
Lang::load($path . 'lang' . DS . Request::instance()->langset() . EXT);
}
}
return Config::get();

View File

@@ -157,6 +157,7 @@ class Lang
// 合法的语言
self::$range = $langSet;
}
return self::$range;
}
/**

View File

@@ -71,6 +71,7 @@ class Request
protected $module;
protected $controller;
protected $action;
protected $langset;
/**
* @var array 请求参数
@@ -968,4 +969,20 @@ class Request
return $this->action ?: '';
}
}
/**
* 设置或者获取当前的语言
* @access public
* @param string $lang 语言名
* @return string
*/
public function langset($lang = null)
{
if (!is_null($lang)) {
$this->langset = $lang;
return $this;
} else {
return $this->langset ?: '';
}
}
}