我知道我可以使用设置环境变量
putenv("ENV_FOO=SOMETHING");
并通过以下方式获取价值:
getenv("ENV_FOO");
如果未设置变量,getenv("ENV_FOO")
则返回false
.
我有一个可以通过环境变量设置的功能集,我想在设置或未设置变量时对行为进行单元测试.
然而,一旦在bash中通过我的开发机器导出变量
export ENV_FOO=something`
它打破了我的单元测试,因为我不能使用php取消环境变量来测试范围.
我尝试过putenv("ENV_FOO=");
这将返回一个空字符串""
,而不是当前shell会话的未设置环境变量.
有没有办法为当前的shell会话取消设置环境变量,还是我必须改变测试变量存在的方式?
从putenv
docpage评论中试试这个