thinkphp5 环境变量配置
// 加载环境变量配置文件 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 中设定的变量
读取环境变量 hinkEnv::get("Xiong");
但是这个环境变量在开发中什么场景下使用并没有明白,如果仅仅是为了区分开发环境,正式环境,我完全可以用其他配置文件,比如config。
留坑
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。