PHP долго работающий скрипт - PullRequest
0 голосов
/ 19 мая 2009

как я могу предоставить обратную связь для команды оболочки, которая может работать довольно долго?

например, мне нужен скрипт, который выполняет hg clone ... тогда в моем php я звоню

exec('hg clone ...', $output, $return_value);

но я не смог бы получить вывод до того, как команда действительно закончилась. В документации (http://www.php.net/manual/en/function.exec.php) указано, что

Note: If a program is started with this function, in order for it to continue running in the background, the output of the program must be redirected to a file or another output stream. Failing to do so will cause PHP to hang until the execution of the program ends.

означает ли это, что я должен изменить свою команду на что-то похожее на

exec('hg clone 2>&1 $some_file', $output, $return_value);

мне нужен символ амперсанда в конце команды, чтобы он работал в фоновом режиме? и могу ли я использовать информацию $ some_file для обратной связи с пользователем?

1 Ответ

1 голос
/ 19 мая 2009

POPEN:

http://php.net/popen

PS popen отлично работает с AJAX

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