php设置$_ENV值的几种方法

作者:zhanhailiang 日期:2015-03-04

$_ENV 值是从 PHP 解析器的运行环境导入到 PHP 的全局命名空间。比如,php-cli模式执行,读取当前用户环境变量;php-fpm模式初始化时,读取当前用户环境变量;

1. 通过 修改系统级、用户级配置文件 设置环境变量

通过 /etc/profile, /etc/environment, ~/.profile,~/.bashrc 设置环境变量;注意,php-fpm模式初始化时就已经设置了相关环境变量,所以对于新设置的环境变量需要重启php-fpm;

2. 通过 php-fpm.conf 设置环境变量

; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from
; the current environment.
; Default Value: clean env 
;env[HOSTNAME] = $HOSTNAME
;env[PATH] = /usr/local/bin:/usr/bin:/bin
;env[TMP] = /tmp
;env[TMPDIR] = /tmp
;env[TEMP] = /tmp
env[TEST_VAR_1] = $TEST_VAR

该方法支持灵活的环境变量配置,比如,通常的php环境运维策略是:

首先, 编写独立的环境变量设置脚本:

export TEST_VAR=hello world

然后,设置php-fpm.conf配置:

env[TEST_VAR_1] = $TEST_VAR

最后,重启php-fpm;

测试结果如下:

[root@/usr/local/nginx/html]# curl http://localhost/test.php
array(25) {
  ["TEST_VAR_1"]=>
  string(11) "hello world"

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。