环境变量读取改成getenv方法

This commit is contained in:
thinkphp
2016-03-23 15:10:46 +08:00
parent 4e0df23a4e
commit fffce1f638

View File

@@ -72,11 +72,8 @@ class Config
if (is_file($file)) { if (is_file($file)) {
$env = include $file; $env = include $file;
foreach ($env as $key => $val) { foreach ($env as $key => $val) {
if (!empty($name)) { $name = !empty($name) ? ENV_PREFIX . $name . '_' . $key : ENV_PREFIX . $key;
$_ENV[ENV_PREFIX . $name . '_' . $key] = $val; putenv("$name=$val");
} else {
$_ENV[ENV_PREFIX . $key] = $val;
}
} }
} }
} }
@@ -92,10 +89,20 @@ class Config
$range = $range ?: self::$range; $range = $range ?: self::$range;
if (!strpos($name, '.')) { if (!strpos($name, '.')) {
// 判断环境变量
$result = getenv(ENV_PREFIX . $name);
if (false !== $result) {
return $result;
}
return isset(self::$config[$range][strtolower($name)]); return isset(self::$config[$range][strtolower($name)]);
} else { } else {
// 二维数组设置和获取支持 // 二维数组设置和获取支持
$name = explode('.', $name); $name = explode('.', $name);
$result = getenv(ENV_PREFIX . $name[0] . '_' . $name[1]);
// 判断环境变量
if (false !== $result) {
return $result;
}
return isset(self::$config[$range][strtolower($name[0])][$name[1]]); return isset(self::$config[$range][strtolower($name[0])][$name[1]]);
} }
} }
@@ -115,18 +122,19 @@ class Config
} }
if (!strpos($name, '.')) { if (!strpos($name, '.')) {
// 判断环境变量 $result = getenv(ENV_PREFIX . $name);
if (isset($_ENV[ENV_PREFIX . $name])) { if (false !== $result) {
return $_ENV[ENV_PREFIX . $name]; return $result;
} }
$name = strtolower($name); $name = strtolower($name);
return isset(self::$config[$range][$name]) ? self::$config[$range][$name] : null; return isset(self::$config[$range][$name]) ? self::$config[$range][$name] : null;
} else { } else {
// 二维数组设置和获取支持 // 二维数组设置和获取支持
$name = explode('.', $name); $name = explode('.', $name);
$result = getenv(ENV_PREFIX . $name[0] . '_' . $name[1]);
// 判断环境变量 // 判断环境变量
if (isset($_ENV[ENV_PREFIX . $name[0] . '_' . $name[1]])) { if (false !== $result) {
return $_ENV[ENV_PREFIX . $name[0] . '_' . $name[1]]; return $result;
} }
$name[0] = strtolower($name[0]); $name[0] = strtolower($name[0]);
return isset(self::$config[$range][$name[0]][$name[1]]) ? self::$config[$range][$name[0]][$name[1]] : null; return isset(self::$config[$range][$name[0]][$name[1]]) ? self::$config[$range][$name[0]][$name[1]] : null;