getenv () работает в браузере, но не в командной строке - PullRequest
1 голос
/ 23 мая 2019

На моем сервере переменная окружения установлена ​​в значение valueOfMyVariable. Моя проблема в том, что getenv () возвращает false, если я запускаю файл в командной строке, но true, если я запускаю его из браузера.

<?php var_dump( getenv('myEnvVariable') ) ?>

Запуск этого кода из командной строки (php myfilename.php) вернет 'false'.

Запуск этого кода из браузера возвращает 'valueOfMyVariable'.

Я ожидаю, что в результате обоих вызовов будет 'valueOfMyVariable'.

Кто-нибудь знает, почему в первом случае вместо моей переменной false? Эта проблема связана с проблемой конфигурации?

Если я не достаточно ясен, не стесняйтесь просить о точности, проблема проста, но трудно объяснить это должным образом, поскольку английский не является моим основным языком.

1 Ответ

1 голос
/ 23 мая 2019

Похоже, вы не экспортировали переменную окружения в терминальной сессии.

export myEnvVariable=someValue
php myfilename.php

Он предположительно работает в браузере, поскольку веб-сервер устанавливает переменную среды.

...