PHP: выполнение приложения командной строки, которое запрашивает пользователей - PullRequest
2 голосов
/ 29 июня 2010

У меня есть приложение командной строки, которое мне нужно выполнить из моего веб-приложения PHP. Скажите, что команда следующая:

foo -arg1 -arg2 -arg3

В зависимости от определенных условий приложение командной строки предложит пользователю нажать клавишу ввода (например, «Пожалуйста, нажмите ввод, чтобы продолжить».)

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

Я разрабатываю на WAMP. Производственный код LAMP.

Ответы [ 4 ]

2 голосов
/ 29 июня 2010

Для этого и нужна программа «да».Он выгружает в программу бесконечный поток 'y \ n' (или как вы говорите с помощью аргументов).Он существует для этой цели (отвечая «да» на запросы «хотите продолжить»).

shell_exec('yes | foo -arg1 -arg2 -arg3')
1 голос
/ 29 июня 2010
$value = fgets(STDIN);

Это позволит пользователю ввести значение, к которому затем можно получить доступ через $ value.

1 голос
/ 29 июня 2010

Вам действительно нужно будет обработать дескриптор процесса , проанализировать вывод программ и записать соответствующий вывод в ответ.

Проверьте расширение ожидайте что может облегчить подобные вещи.

0 голосов
/ 29 июня 2010

Вы пробовали echo "\n" > foo -arg1 -arg2 -arg3?

...