php запустить php скрипт и продолжить

На данный момент у меня есть такая строка кода:

system("/usr/bin/php myphpscript.php --param=".val);

Есть ли способ заставить php не ждать окончания работы скрипта и просто двигаться дальше?

Это цикл перемещения электронной почты, а myphpscript.php анализирует почту. И я не хочу ждать, пока myphpscript.php закончится каждый раз - просто запустите его и двигайтесь дальше!

ОБНОВЛЕНИЕ РЕШЕНИЯ

Нашел ответ здесь:

http://www.php.net/manual/en/function.exec.php

passthru("/usr/bin/php myphpscript.php --param=".val." >> /dev/null 2>&1 &");

Опыт:

/ DEV / нуль

Мне нужно было написать что-то еще, что STDOUT, иначе PHP зависнет до конца скрипта. Поэтому я пишу в / dev / null.

2>&1

Перенаправление ошибок в STDOUT

&

"Запустить в фоновом режиме", как указано в этой теме.

Хорошего дня!

  • Джек

  • Джек

2 ответа

Это должно работать

exec("/usr/bin/php myphpscript.php --param=".val . '&');

Бросив фоновую команду до конца, нужно продолжить выполнение сценария:

system ("/ usr / bin / php myphpscript.php --param =". val. "&");

Я бы также добавил nohup просто для безопасности, так как я думаю, что этот подпроцесс может быть убит, когда родительский скрипт php завершит работу:

system ("nohup / usr / bin / php myphpscript.php --param =". val. "&");

Другие вопросы по тегам