// 加载环境变量配置文件
if (is_file(ROOT_PATH . 'env.php')) {
$env = parse_ini_file(ROOT_PATH . 'env.php', true);
foreach ($env as $key => $val) {
$name = ENV_PREFIX . strtoupper($key); <span style="color:#FF0000;">//使用了前缀</span>
if (is_array($val)) {
foreach ($val as $k => $v) {
$item = $name . '_' . strtoupper($k);
putenv("$item=$v");
}
} else {
putenv("$name=$val");
}
}
}
.env 文件,
windows下面建无名文件挺麻烦的,我改为了env.php ,
env.php 内容:
Xiong="adasd";
环境变量读取
namespace think;
class Env
{
/**
* 获取环境变量值
* @param string $name 环境变量名(支持二级 .号分割)
* @param string $default 默认值
* @return mixed
*/
public static function get($name, $default = null)
{
$result = getenv(ENV_PREFIX . strtoupper(str_replace('.', '_', $name)));
var_dump( getenv(ENV_PREFIX ."Xiong") ); <span style="color:#FF0000;">//打印测试</span>
if (false !== $result) {
return $result;
} else {
return $default;
}
}
}
getenv(ENV_PREFIX ."Xiong")
能获取自己之前env.php 中设定的变量
读取环境变量 \think\Env::get('Xiong');
但是这个环境变量在开发中什么场景下使用并没有明白,如果仅仅是为了区分开发环境,正式环境,我完全可以用其他配置文件,比如config。
留坑