2015-10-08 71 views
1

我尝试在PHP中创建守护进程。我有Artisan命令,但是我不能在后台运行它。在后台运行PHP Artisan

对于简单命令是php aritsan run:daemon

我试图用

exec('php artisan run:daemon &'); 

,它的工作很好,我有多余的进程在后台,但我的实际进程仍在等待答复。当我用CTRL+C或以其他方式杀死它时,第二个进程仍在后台运行。我有Symfony\Process同样的效果,当我使用

$process=new Process("php artisan run:daemon"); 
$process->start(); 

但我并不想杀死进程,我想在后台执行一个命令,然后这个命令的运行过程,并在此之后将关闭自己。我怎样才能做到这一点?

回答

0

把它on the queue

Artisan::queue('run:daemon'); 
+0

当我用这个方法脚本不会等待和背景不运行,但它就像我的另一个CLI命令覆盖。 – littledinosaur