以前只知道用js能實現定時器功能,而且很方便,但今天做專案過程中要實現個功能模組,做到其中某部分時,心想要是可以通過php來實現個定時器功能就好了,於是在網上找了找,發現用gnore_user_abort()函式配合set_time_limit()函式 和乙個死迴圈就可以實現類似功能。雖然專案最終未使用該功能,但覺得潛在的使用價值還是很高的,因此後來又參考網上的一些資料,整理如下:
<?php
// 1、範例**:
ignore_user_abort(true); // 設定與客戶機斷開是否會終止指令碼的執行。
set_time_limit(0); // 設定指令碼超時時間,為0時不受時間限制
ob_end_clean(); // 清空快取
ob_start(); // 開始緩衝資料
while(1)
// 該段程式實現的功能是每隔一秒鐘輸出一次包含當前時間的字串。
// 2、說明:
/*①ignore_user_abort(bool):設定與客戶機斷開是否會終止指令碼的執行。
②set_time_limit(int seconds)設定允許指令碼執行的時間,單位為秒。引數值為0時不受限制。
③ob_end_clean():清除服務端快取的資料
④ob_start():開啟乙個快取(可巢狀)
⑤ob_flush():將快取中的資料壓入佇列
⑥flush():輸出快取佇列中的資料
⑦usleep(int m-seconds):以指定的微秒數延緩程式的執行。
*/// 注:
// flush()和ob_flush()的正確順序應是,先ob_flush()再flush(),不可弄混。
// usleep()函式可替換成sleep()函式,不同之處在於sleep()的引數是秒。
Python如何實現定時器功能
timer 隔一定時間呼叫乙個函式,如果想實現每隔一段時間就呼叫乙個函式的話,就要在timer呼叫的函式中,再次設定timer。timer是thread的乙個派生類 python中的執行緒提供了j a執行緒功能的子集。usr bin env python from threading import ...
linux 實現簡單定時器的功能
對於程式中需要定時去check某些變數或者function返回結果的功能,最早就是用最簡單的sleep 的一行語句,雖然可以實現,但是需要主程式一直等待一段時間,無論是否提前有返回值。後面就想到可以用time 來實現相同的功能,和sleep不同的地方就是,如果check到有返回,可以立即break,...
PHP沒有定時器?
確實,php沒有類似於js中的setinterval或者settimeout這樣的原生定時器相關的函式。但是我們可以通過其他方式來實現,比如使用declare。先來看看是如何實現的,然後我們再好好學習一下declare表示式到底是個什麼東西。function do tick str register...