Я пытаюсь настроить файл триггера php, который запустит фоновый процесс. (см. этот вопрос)
Я делаю это в среде Windows Wampserver.
Так, например, у меня есть trigger.php, который запускает функцию exec, которая требует, чтобы мой backgroundProcess.php обрабатывался и выполнялся.
Однако проблема в том, что мой файл trigger.php ожидает, что команда exec() завершит выполнение backgroundProcess.php до ее остановки. Фоновый процесс длится около 20-30 секунд, и trigger.php ждет все это время, пока backgroundProcess.php не закончит полностью.
Это смысл? Вот файл trigger.php, который запускает команду exec()
exec('C:\wamp\bin\php\php'.phpversion().'\php.exe -f C:\path\to\backgroundProcess.php > C:\wamp\bin\php\php'.phpversion().'\dev\null &');
В принципе, я хочу, чтобы trigger.php просто запускал backgroundProcess и не ждал, когда он закончит.
ИЗМЕНИТЬ
Проблема решена с помощью следующей команды:
$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run("C:\wamp\bin\php\phpVERSIONNUMBER\php-win.exe -f C:/wamp/www/path/to/backgroundProcess.php", 0, false);
