在php中读取用户环境变量

时间:2012-10-06 13:52:16

标签: php environment-variables

我在Windows环境变量中定义了一个环境变量 - >用户变量

$MY_VARIABLE=mypath

在php中我试图像下面那样访问它

<?php
echo $_ENV["MY_VARIABLE"];

但它不会打印任何内容。我在这里遗漏了什么,或者PHP无法访问用户环境变量?

编辑:我正在运行PHP作为Apache模块(我最初遗漏的重要信息)。

2 个答案:

答案 0 :(得分:5)

由于variables_order settings in PHP

,您$_ENV为空

编辑您的PHP.INI

更改

  variables_order = "GPCS"

 variables_order = "EGPCS"

如果它没有尝试使用.htaccess来实现这个

,它应该现在可以使用

将以下内容添加到.htaccess

SetEnv foo bar

你可以通过PHP获得它

var_dump(getenv('foo'),$_ENV);

答案 1 :(得分:1)

最近我写了一个库来从环境变量中获取值并解析为PHP数据类型。该库可用于将环境变量解析为PHP数据类型(如转换为整数,浮点数,空值,布尔值),使用社区的贡献解析复杂的数据结构,如JSON字符串等。

图书馆可在此处找到:https://github.com/jpcercal/environment

要从环境变量中获取值,请执行以下操作:

<?php
// ...
require "vendor/autoload.php";
// ...
var_dump(Cekurte\Environment\Environment::get("MY_VARIABLE"));

享受它。