Я знаю, что я могу установить переменную окружения с помощьюКак отключить переменную среды с помощью php?
putenv("ENV_FOO=SOMETHING");
и получить значение с помощью:
getenv("ENV_FOO");
Если переменная не установлена, getenv("ENV_FOO")
вернется false
.
У меня есть набор функций, который можно установить с помощью переменной окружения , и я хотел бы выполнить модульное тестирование поведения, когда переменная установлена или не установлена.
Еще раз экспортировать переменную на моем Dev машины в Баш через
export ENV_FOO=something`
это разбивает мое модульное тестирование, так как я не могу сбросить значение переменной среды с использованием PHP для объема теста.
Я пробовал putenv("ENV_FOO=");
, но это вернет в пустую строку ""
, а не в переменную среды unset для текущего сеанса оболочки.
Есть ли способ отключить переменную окружения для текущего сеанса оболочки или мне нужно изменить способ проверки существующей переменной?
Это не работает для меня. Затем я снова понял, что использую hhvm, у которого есть ошибка: это не работает: https://github.com/facebook/hhvm/issues/2533 – k0pernikus
жаль слышать это :(вы можете попробовать 'shell_exec (" unset FOO "); 'если вы не установили переменную env с помощью php, может работать –
, на самом деле это не сработает, проигнорируйте его :) –