php递归无限页面加载

时间:2012-09-17 19:03:15

标签: php recursion

我有一个连续运行的linux bash脚本并请求一个php页面。 php页面做了一些魔术,在500ms之后bash脚本再次请求php页面,php做了一些魔术。这日复一日地运行,但有时bash崩溃,这意味着我需要登录到机器并再次运行脚本。不,我正在寻找完全由php驱动的解决方案。

我做了以下测试,但是不行。     FILE));

recursiveStopStart(true,$basepath);

function recursiveStopStart($mayrun = true,$basepath){
    if ($mayrun == true){
        sleep(1);
        exec("C:\wamp\bin\php\php5.3.13\php.exe ".$basepath."/scripts/StopStart.php");
        exec("C:\wamp\bin\php\php5.3.13\php.exe ".$basepath."/scripts/TestStopStart.php");
        flush();
        exit();
    }
}
?>

StopStart.php是完成魔术的脚本。 TestStopStartphp是构成递归思想的主要php页面。

我正在寻找一个我请求1页的解决方案,该页面调用魔术页面并调用自身来重新运行所有内容。

转向php的第二个原因是我可以让它独立于平台(bash不会在Windows上运行......)。

希望有人能帮助我。

2 个答案:

答案 0 :(得分:2)

创建一个PHP守护程序。你会节省很多头痛。

http://pear.php.net/package/System_Daemon

System_Daemon是一个允许开发人员创建自己的守护进程的PHP类 Linux系统上的应用程序

答案 1 :(得分:1)

流行的守护程序库似乎不能跨OS运行。我确信这是由于* NIX和Windows之间处理服务/流程的方式截然不同。

看起来您将不得不使用任意数量的流行库(System_Daemon,Supervisord,

)在linux中创建一个守护进程

然后在Windows http://www.akchauhan.com/create-windows-service-to-schedule-php-script-execution/中创建一个。这是用来创建一个服务,在像cron这样的间隔上执行你的php脚本。