环境变量是操作系统中的键值对,用于存储配置信息。PHP通过getenv()函数读取环境变量,如数据库主机$getenv('DB_HOST');也可用$_ENV超全局数组(需php.ini中variables_order包含'E')。使用putenv('KEY=value')可在脚本中临时设置环境变量,配合.env文件加载敏感信息,提升应用安全性和可维护性。

在PHP开发中,环境变量的管理对于配置不同运行环境(如开发、测试、生产)非常重要。合理使用环境变量可以避免将敏感信息硬编码到代码中,提升应用的安全性和可维护性。
环境变量是操作系统层面存储的键值对,通常用于保存配置信息,比如数据库连接、API密钥、调试开关等。PHP可以在运行时读取这些变量,也可以在某些情况下进行设置。
PHP提供了多种方式来读取环境变量,最常用的是 getenv() 函数。
示例:
立即学习“PHP免费学习笔记(深入)”;
$host = getenv('DB_HOST');
if ($host) {
echo "数据库主机: " . $host;
} else {
echo "未设置 DB_HOST";
}
另外,你也可以通过超全局数组 $_ENV 获取环境变量,但前提是PHP配置中启用了 variables_order 包含 'E'。
注意:默认情况下,$_ENV 可能为空,需要在 php.ini 中设置 variables_order = "EGPCS" 才能正常使用。
虽然环境变量通常是系统或Web服务器设置的,但在PHP脚本中也可以临时设置,主要使用 putenv() 函数。
示例:
立即学习“PHP免费学习笔记(深入)”;
putenv("APP_ENV=development");
putenv("LOG_LEVEL=debug");
echo getenv("APP_ENV"); // 输出: development
注意:使用 putenv() 设置的变量不会影响系统全局环境,仅在当前PHP进程内有效。
在现代PHP项目中,推荐结合 .env 文件管理环境变量,尤其是在使用框架(如Laravel、Symfony)时。
$dotenv = Dotenv\Dotenv::createImmutable(__DIR__); $dotenv->load();
这样就可以通过 getenv() 安全地获取配置,而无需将密钥提交到代码仓库。
基本上就这些。掌握 getenv() 和 putenv() 的使用,配合 .env 文件管理,能让PHP项目的配置更灵活、更安全。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号