Понимание, почему exec ($ my_command) зависает - PullRequest
2 голосов
/ 12 мая 2010

У меня есть вызов exec (), который никогда не заканчивается, и мой процесс Apache / PHP блокируется до истечения времени ожидания. Это загрузка базы данных PostgreSQL вот так

"C:\Program Files\PostgreSQL\8.3\bin"\psql --host 127.0.0.1 --dbname unitTests --file C:\ZendStd\www\voo4\trunk\resources\sql\base_test_projectx.pg.sql --username postgres 2>&1

Он отлично работает в командной строке, но просто блокируется при вызове через функцию php exec (). Я просто хочу понять, почему мой вызов exec () никогда не заканчивается, я думаю, что psql попросит пароль, но как я могу напечатать вывод до завершения вызова?

Я использую PHP 5.2.12 в Windows XP, с PGSql 8.3.

1 Ответ

2 голосов
/ 01 октября 2010

Вы можете использовать passthru (), который напрямую выводит все. Или вы используете некоторые функции управления процессом.

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