在我的apache实例上,它设置了一个env变量APP_ENV=development.我试图在我的PHP端(在启动测试套件的实例中)动态更改它,如下所示:
putenv('APP_ENV=testing')
var_dump(getenv('APP_ENV')); // still returns development
Run Code Online (Sandbox Code Playgroud)
我试过了:
safe_mode_allowed_env_vars = PHP_ APP_在php.ini中设置更新:
我使用的是PHP版本5.4.16,并注意到安全模式已被弃用.我不确定这是否意味着putenv甚至可以覆盖甚至取消现有的环境?
您正在使用Apache变量,因此,您应该使用apache_setenv()和apache_getenv()
apache_setenv('APP_ENV', 'testing');
Run Code Online (Sandbox Code Playgroud)
要恢复它使用:
apache_getenv('APP_ENV');
Run Code Online (Sandbox Code Playgroud)