好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

PHP通过设置系统环境变量来区分测试与正式环境

一、介绍

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通过设置系统环境变量来区分测试与正式环境的详细内容...

  阅读:43次