0

得到这个代码:

<?php
function test ($url){
$starttime = microtime(true);
$valid = @fsockopen($url, 80, $errno, $errstr, 30);
$stoptime = microtime(true);
echo (round(($stoptime-$starttime)*1000)).' ms.';

if (!$valid) {
   echo "Status - Failure";
} else {
   echo "Status - Success";
}
}
    test('google.com');
?>

我希望有一个选项可以每 5 分钟/1 小时/1 天等执行一次此功能。有人建议我使用 cron,但在进行一些研究之前和之后我从未听说过 cron,我知道它是一个单独的文件,它将执行每x时间运行一次。如果我有多个用户,例如 userA 想要每 5 分钟运行一次脚本,而 userB 想要每小时运行一次脚本,该怎么办?在这种情况下,我需要为每个用户创建多个 cron 文件吗?

编辑:我正在考虑做这样的事情:

for ($i = 0; $i < 100; $i++) { 
    test('google.com');
    sleep(10 * 60); 
}

只有在睡眠行中,我才会有一个每个用户自己定义的自定义 $n 字段。我的问题是 - 它仅在整个周期完成后返回结果,我希望它在每个“回合”后返回结果?(idk 它叫什么,但基本上会给出 1 个值,然后 10 分钟后给出第二个值,依此类推)。

4

2 回答 2

2

我发现的唯一方法是使用将在 setTimeout 内从用户页面调用的 ajax 方法。参见:settimeout 函数

于 2013-03-04T12:44:04.797 回答
0

您可能需要使用 cron (UNIX) 或 Windows Tasks (Microsoft),具体取决于服务器上的操作系统。

克朗

窗口任务

问候,

于 2013-03-04T12:56:15.863 回答