我有一个长期运行的PHP脚本,如下所示:
$myClass->myFunction('this takes 30 minutes to run');
我希望在myFunction()
运行期间每隔30秒发送一次心跳,以提醒我的应用程序脚本仍在运行且未发生故障。
在JavaScript中,我可以使用setInterval()
实现此目的。我希望能够在PHP中做同样的事情。也许使用自定义setInterval()
函数,如下所示:
setInterval(function(){
$myClass->addHeartbeat("still running");
}, 30000);
鉴于PHP的同步特性,这是否可行?
答案 0 :(得分:-1)
没有任何简单的方法可以做到这一点,但是因为你有一个长期运行的PHP脚本,你可以做这样的事情,假设你有一个主循环。:
while($running) { // long running main loop
if(time() % 30 == 0) {
$myClass->addHeartbeat("still running");
}
// your long running phpscript code
}