一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

php定時計劃任務的實現方法詳解

我在uchome 中 分析到, uchome是這樣做的
1. 把所有的計劃任務存放到數據庫
2. 每次用戶進行操作或打開頁面的時候都按排序執行一條計劃任務. 也就是輪番判斷,時間到了的, 就在用戶進程中執行.
uchome的計劃任務代碼在 ./source/function_cron.php
上面只自己分析uchome代碼關于計劃任務大概的結果, 拋磚引玉. 希望誰有好的方法拿出來共享.
ignore_user_abort()
我前一段時間徹底研究過計劃任務,認為計劃任務的思路很多,但最適合Web的還是觸發式的,就是類似于DZ和phpWind的,似乎大多數web應用也都是這么做的,再說幾種其他的供參考
1,為了提供穩定的觸發,用crontab+wget或者ab提供定時訪問
2,nohup + php寫守護程序
3,直接用php寫個死循環還提供觸發,這時需要用緩存或者數據庫來協助推出循環,還有必須用sleep或者usleep控制觸發頻率
4,crontab+php
5,web觸發方式,這也有區別,一種是定時觸發,一種是定周期觸發,DZ和phpWind都是定時觸發,我最后采用的是定周期觸發
具體的實現思路 很容易想,就不多說了
自己有主機肯定用crontab來執行命令行php
沒有只能寫在代碼中了
用crontab會比較好, 如果用循環的話, 最好也要把循環和具體處理程序分開, 不然內存會一直增加.

今天一不小心在php手冊上發現了這個函數-ignore_user_abort,這個函數可以幫助我們實現像linux中的cron一樣實現計劃任務,下面一起來看下該如何來實現。
首先看下php手冊對這個函數的解釋
Description

int ignore_user_abort ([ bool $setting ] )
Sets whether a client disconnect should cause a script to be aborted.

也就是說無論客戶端是否關閉瀏覽器,下面的程序都會執行.
再看下其參數
Parameters

setting
If not set, the function will only return the current setting.

這個函數接受一個參數,來決定是否啟用ignore_user_abort的功能。
再看其返回值:

Return Values
Returns the previous setting, as a boolean.

這里說返回前一次的設置,并且是bool值得,經過我的測試,這個說法是不對的,返回的明明是int型的,不相信的話大家可以寫一個php文件來測試下。
說了這么多了,到底該如何用php的這個函數實現計劃任務呢?還跌借助另外一個函數,這個函數是set_time_limit,通過set_time_limit0)可以設置程序的運行時間為無限制,php默認的運行時間是30秒,通過set_time_limit(0)可以讓程序無限制的執行下去。在程序執行之前加上ignore_user_abort(1)和set_time_limit(0)即可以了,最終程序該如何寫呢?給大家一個例子。
復制代碼 代碼如下:
<?php
ignore_user_abort(); // run script in background
set_time_limit(0); // run script forever
$interval=30; // do every 15 minutes…
do{
$fp = fopen(‘text3.txt','a');
fwrite($fp,'test');
fclose($fp);
sleep($interval); // wait 15 minutes
}while(true);
?>

php技術php定時計劃任務的實現方法詳解,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产成人精品一区二三区在线观看 | 日本久久久久久久中文字幕 | 秋霞日韩一区二区三区在线观看 | 91亚洲视频在线观看 | 欧美中文字幕一区二区三区 | 免费黄色视屏 | 黄色网战在线观看 | 国产精品一区二区三区四区 | 国内精品视频成人一区二区 | 色多多视频网站 | 免费污视频在线观看 | 亚洲综合色婷婷中文字幕 | 亚洲精品成人 | 亚洲天堂一区二区三区四区 | 亚洲天堂久久精品成人 | 亚洲丶国产丶欧美一区二区三区 | 精品久久久久久乐 | 中文字幕日韩精品一区口 | 一本大道久久香蕉成人网 | 91成人在线免费视频 | 国产人成亚洲第一网站在线播放 | 精品视频在线观看视频免费视频 | 免费xxxxx在线观看网站 | 国产第一亚洲 | 91麻豆精品国产91久久久 | 色老板在线观看 | 影音先锋色偷偷米奇四色 | 精品国产一区二区二三区在线观看 | 精品欧美一区二区vr在线观看 | 亚洲图色网站 | 天天综合网天天综合色 | 黄网站在线免费 | 亚洲国产精品自产在线播放 | 久久精品视频7 | 五月亭亭六月丁香 | 视频网站黄色 | 欧美日韩一区二区三区自拍 | 成人a毛片视频免费看 | 国产女同一区二区在线 | 日韩午夜高清福利片在线观看 | 午夜欧美性视频在线播放 |