php启动php脚本并继续

php启动php脚本并继续,php,system,exec,continue,passthru,Php,System,Exec,Continue,Passthru,目前,我有一行代码如下: system("/usr/bin/php myphpscript.php --param=".val); 有没有一种方法可以让php不必等待脚本完成,而是继续前进 这是一个循环移动的电子邮件,myphpscript.php正在解析邮件。我不想每次都等到myphpscript.php完成,只要启动它,继续前进 更新解决方案 在这里找到了答案: 经验: /dev/null 我需要写一些其他的东西,STDOUT,否则PHP将挂起,直到脚本完成。所以我改为写/dev/nul

目前,我有一行代码如下:

system("/usr/bin/php myphpscript.php --param=".val);
有没有一种方法可以让php不必等待脚本完成,而是继续前进

这是一个循环移动的电子邮件,myphpscript.php正在解析邮件。我不想每次都等到myphpscript.php完成,只要启动它,继续前进

更新解决方案

在这里找到了答案:

经验:

/dev/null

我需要写一些其他的东西,STDOUT,否则PHP将挂起,直到脚本完成。所以我改为写/dev/null

2>&1
将错误重定向到标准输出

&
本线程中提到的“在后台运行”

祝你有愉快的一天

  • 杰克

  • 杰克

这应该行得通

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

如果脚本继续,将后台命令抛出到末尾:

系统(“/usr/bin/php myphpscript.php--param=“.val.”&”)

为了安全起见,我还添加了nohup,因为我认为当父php脚本完成时,这个子进程可能会被杀死:


系统(“nohup/usr/bin/php myphpscript.php--param=“.val.”&”)

我已经添加了您的更改,但是如果通过终端运行脚本,脚本仍在等待myphpscript.php完成。然后我的IMAP连接将超时。有没有办法让主脚本在启动下标后继续运行?这个解决方案+nohup为我提供了“nohup:redirecting stderr to stdout”+我的下标输出。没有nohup,只需给我下标输出。(在我的终端)。
exec("/usr/bin/php myphpscript.php --param=".val . '&');