(2)如果重復,可能不是想要的結果。在這種情況下,將啟動同壹計劃的多個任務。
(3)如果每個頁面都包含這個頁面,那麽啟動多個永久運行的程序會消耗不必要的系統資源,也會影響頁面的正常訪問。如果放在前面,頁面訪問時會壹直等待返回(那就是無限循環)。
大致思路如下,供大家參考。
& lt?服務器端編程語言(Professional Hypertext Preprocessor的縮寫)
ignore_user_abort(真);//即使客戶端斷開連接(比如關閉瀏覽器),PHP腳本也能繼續執行。
set _ time _ limit(0);//執行時間不限,php默認執行時間為30秒。set_time_limit(0)允許程序無限期執行。
$ interval = 60 * 5;//每5分鐘運行壹次。
$ f = ' lock.txt
If(file_exists($f)){ //判斷標簽文件是否存在,存在則退出,防止重復操作。
exit();
}
做{
if(@ get _ file _ contents($ f)= = ' stop '){//設置停止條件,停止時只需將stop寫入lock.txt即可。
打破;
}
@file_put_contents($f,' run ');//重復寫壹個文件,表示調度的任務已經運行。
...省略任務代碼。
睡眠($間隔);//程序暫停5分鐘。
}while(真);
@解鎖($ f);//刪除標記文件
& gt