php启动php脚本并继续

时间:2011-05-23 10:13:33

标签: php system exec continue passthru

目前我有一行代码如下:

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

有没有办法让php 等待脚本完成 - 而只是继续前进?

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

更新解决方案

在这里找到答案:

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

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

经验:

  
    

的/ dev / null的

  

我需要写一些其他的STDOUT,否则PHP会挂起直到完成脚本。所以我写信给/ dev / null。

2>&1

将错误重定向到STDOUT

&

“在后台运行”,如本主题所述。

祝你有个美好的一天!

  • 插孔

  • 插孔

2 个答案:

答案 0 :(得分:0)

这应该有效

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

答案 1 :(得分:0)

将后台命令抛到最后,脚本应该继续:

system(“/ usr / bin / php myphpscript.php --param =”。val。“&”);

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

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