一、介绍
1.PHP中可以通过 getenv() 函数和 $_ENV 来获取环境变量
2.环境变量存在系统中,不随代码的提交改变而改变
3.如果公司有测试服务器和正式服务器两台,通过环境变量的方式来区分测试环境和正式环境是一个不错的办法
4.安全,不用担心提交覆盖
二、设置方法
1.打开 etc/profile 文件: vim ~/etc/profile
新增一个环境变量 export PHP_ENV="test" ,正式服务器设置为 ="prod"
这样通过系统环境变量来做一些不同的操作,或者存在不同的数据库账号密码
设置完后重新加载: source ~/etc/profile
2.修改PHP的 php-fpm.conf 文件,设置PHP环境变量
底部增加: env[PHP_ENV]=$PHP_ENV
重启PHP服务, service php-fpm restart
3.如果getenv('PHP_ENV')无法获取值?
可能因为php.ini默认不载入 $_ENV 变量定义,如果此时查看 phpinfo() ,会发现我们设置的环境变量为"no value"
修改 vim /etc/php/php.ini
修改: variables_order:variables_order="EGPCS"
重启PHP服务
4.查看phpinfo(),或者使用getenv()函数获取变量
如果无法获得,可使用 $_ENV ;因为 getenv 函数在7版本已经不支持了。
更多php相关知识,请访问php教程!
以上就是PHP通过设置系统环境变量来区分测试与正式环境的详细内容,更多请关注Gxlcms其它相关文章!
查看更多关于PHP通过设置系统环境变量来区分测试与正式环境的详细内容...