从另一个PHP文件(exec)在PHP中执行脚本

时间:2013-07-06 04:05:13

标签: cron exec daemon php

最初我有一个每天执行一个php文件的cronjob。显然,php文件很重,cronjob没有执行它。

我选择创建一个睡眠时间为24小时并且运行良好的守护进程,除了我相信服务器由于其不活动而在一定时间后杀死此进程。我有一个每5分钟运行一次的DEAMON,而且这个DEAMON永远不会停止,但等待24小时的那个一直停止工作。

我的计划是创建一个cronjob来检查进程是否正在运行,如果不执行它:

exec("ps auxwww|grep _DAEMON.php|grep -v grep", $output);
if(empty($output)){
   exec("php -f _DAEMON.php");
}

由于某些原因,这不起作用,exec("ps auxwww|grep _DAEMON.php|grep -v grep", $output)确实检测到脚本是否正常运行,因此exec("php -f _DAEMON.php")是不起作用的。{/ p>

我尝试print_r来自exec("php -f _DAEMON.php",$status); $ {状态}这就是我得到的:

Array
(
    [0] => X-Powered-By: PHP/5.2.17
    [1] => Content-type: text/html
    [2] => 
)

我尝试了exec("php-cli -f _DAEMON.php")并且工作得非常好,但由于我调用的文件是一个守护程序,php-cli使它成为我原始文件的一部分(某种include()我相信)并冻结我的原始文件,它确实为守护进程创建一个单独的新进程,但原始文件将永远加载。

有什么想法吗?谢谢!

0 个答案:

没有答案