1

我有这个代码:

<?PHP
ignore_user_abort(true);
set_time_limit (0);

while(1) {

    // my codes

}
?>

现在 过了一会儿如何检测该脚本是否正在运行?

我用这个角色来回答这个问题:

<?PHP
ignore_user_abort(true);
set_time_limit (0);

while(1) {

    // my codes

    $statusfile = strtolower(file_get_contents('status.txt')); // for stop checking
    if (!(strpos($statusfile,'stop') !== false)) break;

    $status = /* my status */; // for writing status of itself
    file_put_contents('status.txt', $status);

}
?>

但是在这个角色中,我的脚本本身必须写入自己的状态,如果突然停止(例如服务器重置或脚本发生错误)将不会写入任何状态,我们无法检测到它的状态,例如停止或运行。

现在我想知道如何从外部检测脚本的运行状态?

我怎样才能阻止它呢?

4

0 回答 0