PHP $_ENV
介绍
$_ENV 是 PHP 中的另一个超全局关联数组。它存储脚本可用的环境变量。$HTTP_ENV_VARS 也包含相同的信息,但不是超全局变量,并且现在已被弃用。
环境变量被导入到全局名称空间。其中大多数变量由 PHP 解析器正在运行的 shell 提供。因此,不同的平台上环境变量的列表可能不同。
PHP 是作为服务器模块还是 CGI 处理器运行,则此数组还包括 CGI 变量。
PHP 库有 getenv() 函数来检索所有环境变量或特定环境变量的列表
getenv
以下脚本显示所有可用环境变量的值
<?php $arr=getenv(); foreach ($arr as $key=>$val) echo "$key=>$val "; ?>
要获取特定变量的值,请使用其名称作为 getenv() 函数的参数
示例
<?php
echo "Path: " . getenv("PATH");
?>输出
浏览器将显示类似以下结果
Path: /usr/local/bin/factor:/root/.sdkman/candidates/kotlin/current/bin:/usr/GNUstep/System/Tools:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/usr/local/scriba/bin:/usr/local/smlnj/bin:/usr/local/bin/std:/usr/local/bin/extra:/usr/local/fantom/bin:/usr/local/dart/bin:/usr/libexec/sdcc:/usr/local/icon-v950/bin:/usr/local/mozart/bin:/opt/Pawn/bin:/opt/pash/Source/PashConsole/bin/Debug/:.:/root/.sdkman/candidates/kotlin/current/bin:/usr/bin:/sbin:/bin
PHP 也有 putenv() 函数来创建一个新的环境变量。环境变量仅在当前请求期间存在。
应该避免更改某些环境变量的值。默认情况下,用户只能设置以 PHP_ 开头的环境变量(例如 PHP_FOO=BAR)。
php.ini 中的 safe_mode_protected_env_vars 指令包含一个用逗号分隔的环境变量列表,最终用户无法使用 putenv() 更改这些变量。
putenv
示例
<?php
putenv("PHP_TEMPUSER=GUEST");
echo "Temp user: " . getenv("PHP_TEMPUSER");
?>输出
浏览器将显示结果如下
Temp user: GUEST
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP