我有一個php文件test.php
。在5秒後,我想要echo
或print
「成功」,在瀏覽器調用或加載或打開php文件後不久。順便說一句,有時候我可能想在特定的時間間隔後執行/初始化一些函數。設置基於PHP定時器的功能
任何人都可以告訴/建議我如何使用PHP做一個面向時間的任務,如5秒後打印一條消息?
在此先感謝..
我有一個php文件test.php
。在5秒後,我想要echo
或print
「成功」,在瀏覽器調用或加載或打開php文件後不久。順便說一句,有時候我可能想在特定的時間間隔後執行/初始化一些函數。設置基於PHP定時器的功能
任何人都可以告訴/建議我如何使用PHP做一個面向時間的任務,如5秒後打印一條消息?
在此先感謝..
它通常不是一個好主意,在PHP中做到這一點。 PHP腳本應該儘可能快地運行。延遲PHP腳本
最好的選擇是JavaScript和其setTimeout():
setTimeout(function() { alert ("Done!"); }, 5000);
(或者,而不是alert()
,你可以指示JavaScript來顯示一個對話框或類似)。
如果你不想依賴於JavaScript,您可以考慮META redirect將用戶帶到包含「完成」的頁面。信息。
<meta http-equiv="refresh" content="5; url=http://example.com/">
您可以使用jQuery計時器延遲隊列中的後續項目的執行
http://www.w3schools.com/js/js_timing.asp
<html>
<head>
<script type="text/javascript">
function timeMsg()
{
var t=setTimeout("alertMsg()",3000);
}
function alertMsg()
{
alert("Hello");
}
</script>
</head>
<body>
<form>
<input type="button" value="Display alert box in 3 seconds"
onclick="timeMsg()" />
</form>
</body>
</html>
while(1){
sleep($time);
youfunction();
}
如果你有,你可以使用這個:http://php.net/manual/en/function.register-tick-function.php但要小心影響性能。
在被調用的函數中,檢查是否有足夠的時間過去,如果是這樣,取消註冊tick函數,然後運行相應的代碼。
不要傳遞字符串setTimeout - http://w3fools.com/ – mplungjan