Как перейти от пребывания для вывода оболочки выполнить после запуска в PHP-скрипте?

У меня есть этот пример кода с именем main.php:

<?php
shell_exec('C:\wamp\bin\php\php5.4.3\php.exe a.php');
shell_exec('C:\wamp\bin\php\php5.4.3\php.exe b.php');
?>

При выполнении этого скрипта после выполнения первого shell_exec он остается до завершения первого shell_exec, а затем запускается второй.

но я хочу, чтобы этот скрипт не останавливался для завершения первого shell_exec и его вывода и выполнялся вторым.

теперь, как я могу это сделать?

У меня есть несколько сценариев, и мне нужно запускать их одновременно с помощью основного сценария и управлять им с помощью него. но я не знаю, как запустить мои сценарии одновременно из этого основного сценария?

update1: я не могу запустить a.php и b.php по заданиям cron, потому что время их окончания неизвестно. может быть, a.php закончил через 1 час или 10 минут и b.php тоже самое, что и a.php.

update2: я нашел решение на этой странице:

Есть ли способ использовать shell_exec, не дожидаясь завершения команды?

1 ответ

Решение

Если я понимаю, что вы хотите запустить фоновый процесс на коробке Windows. Попробуйте это...

<?php
    shell_exec('start /b C:\wamp\bin\php\php5.4.3\php.exe a.php');
    shell_exec('start /b C:\wamp\bin\php\php5.4.3\php.exe b.php');
?>
Другие вопросы по тегам