2019-12-10 |

$_ENV 变量

$_ENV 是一个包含服务器端环境变量的数组。它是 PHP 中一个超级全局变量,我们可以在 PHP 程序的任何地方直接访问它。

$_ENV 只是被动的接受服务器端的环境变量并把它们转换为数组元素,你可以尝试直接打印它:

print_r($_ENV);

限于篇幅,在此不再列出打印的结果,且不同的服务器上,打印出的结果可能是完全不同的。

$_ENV 数组元素

$_ENV 数组中的元素(数组单元)随服务器环境不同而有较大差异,所以无法像 $_SERVER<那样列出完整的列表。以下是 $_ENV 数组包含的比较通用的元素:

  • $_SERVER['PATH']:环境变量 PATH 路径。
  • $_SERVER['CLASSPATH']:系统 CLASSPATH 路径。
  • $_SERVER['LIB']:系统 LIB 库路径。
  • $_SERVER['INCLUDE']:系统 Include 路径,注意与 PHP 的包含路径是不一样的。
  • $_SERVER['OS']:操作系统类型。
  • $_SERVER['LANG']:系统语言,如 en_US 或 zh_CN。
  • $_SERVER['PWD']:当前工作目录。
  • $_SERVER['TEMP']:系统 TEMP 路径。
  • $_SERVER['AP_PARENT_PID']:当前进程 ID 号。
  • $_SERVER['NUMBER_OF_PROCESSORS']:系统 CPU 数目。

$_ENV 为空的原因及解决办法

如果打印输出 $_ENV 为空,可以检查一下 php.ini 的配置:

variables_order = "EGPCS"

上述配置表示 PHP 接受的外部变量来源及顺序,EGPCS 是 Environment、Get、Post、Cookies 和 Server 的缩写。如果 variables_order 的配置中缺少 E ,则 PHP 无法接受环境变量,那么 $_ENV 也就为空了。

流程控制

发表评论

    评价:
    验证码: 点击我更换图片
    最新评论