我在PHP中寻找类似于javascript中的setInterval方法:
setInterval(function() {
/* do something amazing every ten seconds */
}, 10000);
我在SO上发现了这个答案:https://stackoverflow.com/a/12783983, 我正在玩这个功能,我意识到我不知道这行是做什么的:
$seconds=(int)$milliseconds/1000;
所以我研究了http://php.net,但我能找到的最接近的是:http://php.net/manual/en/function.intval.php
我想在我的网站上使用它之前完全理解它的作用,所以有人可以了解一下这行是什么
function setInterval($f, $milliseconds) {
$seconds=(int)$milliseconds/1000;
while(true) {
$f();
sleep($seconds);
}
}
修改: 稍微调整一下这个功能之后我想出了这个:
function setInterval2($callBack, $seconds) {
while(true) {
$callBack();
sleep($seconds/1000);
}
}
这两个函数(函数的php版本没有javascript版本)做同样的事情&得到相同的结果?
这两者之间有区别吗?
提前谢谢。
答案 0 :(得分:0)
此:
(int)$milliseconds/1000;
基本上与:
相同floor($milliseconds/1000);
除法的结果是浮点值。 (int)
将其转换为整数并缩小小数。