php getenv 和 putenv 用法

getenv 的功能是取得一个指定的环境变量。

getenv('REMOTE_ADDR') $_SERVER['REMOTE_ADDR'] 功能一样

但是当Web服务器API是ASAPI (IIS)的时候,getenv函数是不起作用的。这种情况下你如果用getenv来取得用户客户端ip的话,得到的将是错误的ip地址。

 

[ 测试代码 ]

 1 $ip1 = $_SERVER['REMOTE_ADDR'];

 2 $ip2 = getenv('REMOTE_ADDR');

 3 

 4 putenv("test=is a test");

 5 $str1 = getenv('test');

 6 $str2 = $_SERVER['test'];

 7 

 8 echo  "ip1:{$ip1}";

 9 echo "<br>";

10 echo  "ip2:{$ip2}";

11 echo "<br>";

12 echo  "str:{$str1}";

13 echo "<br>";

14 echo  "str:{$str2}";

 

[ 运行结果 ]

php getenv 和 putenv 用法

 

总结:putenv 可以设置一个新的环境变量但是从 $_SERVER 这个超全局数组中是看不到的,getenv 可以获取 $_SERVER 里面的成员

 

你可能感兴趣的:(PHP)