команда Linux "export" не работает и выдает ошибки - PullRequest
4 голосов
/ 28 июля 2011

Я хочу выполнить некоторую команду Unix из скрипта PHP. Код приведен ниже:

$filepath='/home/biplab/hft';
$folder='0b';
exec('export HFT_BASEDIR='.$filepath);
chdir($file_path.'/'.$folder);   
exec('make prod');

Теперь проблема в том, что exec('export HFT_BASEDIR='.$filepath); не работает, по этой причине отображается много ошибок. Есть ли альтернативный вариант выполнения той же команды?

Ответы [ 2 ]

1 голос
/ 28 июля 2011

переменные среды являются локальными для процессов, экспорт только говорит оболочке передать эти переменные дочерним процессам.

exec('export HFT_BASEDIR='.$filepath . '; make prod');
1 голос
/ 28 июля 2011

Работает просто отлично. Но оболочка, в которой вы ее выполняете, умирает до возврата вызова функции. Попробуйте putenv() вместо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...