最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php定時(shí)計(jì)劃任務(wù)的實(shí)現(xiàn)方法詳解

 更新時(shí)間:2013年06月06日 16:49:47   作者:  
本篇文章是對(duì)php定時(shí)計(jì)劃任務(wù)的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下

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

今天一不小心在php手冊(cè)上發(fā)現(xiàn)了這個(gè)函數(shù)-ignore_user_abort,這個(gè)函數(shù)可以幫助我們實(shí)現(xiàn)像linux中的cron一樣實(shí)現(xiàn)計(jì)劃任務(wù),下面一起來看下該如何來實(shí)現(xiàn)。
首先看下php手冊(cè)對(duì)這個(gè)函數(shù)的解釋
Description

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

也就是說無論客戶端是否關(guān)閉瀏覽器,下面的程序都會(huì)執(zhí)行.
再看下其參數(shù)
Parameters

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

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

Return Values
Returns the previous setting, as a boolean.

這里說返回前一次的設(shè)置,并且是bool值得,經(jīng)過我的測(cè)試,這個(gè)說法是不對(duì)的,返回的明明是int型的,不相信的話大家可以寫一個(gè)php文件來測(cè)試下。
說了這么多了,到底該如何用php的這個(gè)函數(shù)實(shí)現(xiàn)計(jì)劃任務(wù)呢?還跌借助另外一個(gè)函數(shù),這個(gè)函數(shù)是set_time_limit,通過set_time_limit0)可以設(shè)置程序的運(yùn)行時(shí)間為無限制,php默認(rèn)的運(yùn)行時(shí)間是30秒,通過set_time_limit(0)可以讓程序無限制的執(zhí)行下去。在程序執(zhí)行之前加上ignore_user_abort(1)和set_time_limit(0)即可以了,最終程序該如何寫呢?給大家一個(gè)例子。

復(fù)制代碼 代碼如下:

<?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);
?>

相關(guān)文章

  • php簡(jiǎn)單實(shí)現(xiàn)多字節(jié)字符串翻轉(zhuǎn)的方法

    php簡(jiǎn)單實(shí)現(xiàn)多字節(jié)字符串翻轉(zhuǎn)的方法

    這篇文章主要介紹了php簡(jiǎn)單實(shí)現(xiàn)多字節(jié)字符串翻轉(zhuǎn)的方法,涉及php操作字符串的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-03-03
  • PHP遍歷數(shù)組的三種方法及效率對(duì)比分析

    PHP遍歷數(shù)組的三種方法及效率對(duì)比分析

    這篇文章主要介紹了PHP遍歷數(shù)組的三種方法及效率對(duì)比,實(shí)例分析了foreach、while與for三種遍歷數(shù)組的方法與相關(guān)的效率比對(duì),具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-02-02
  • php CI框架插入一條或多條sql記錄示例

    php CI框架插入一條或多條sql記錄示例

    本節(jié)主要為大家介紹了php CI框架如何插入一條或多條sql記錄,示例代碼如下,不了解的朋友不要錯(cuò)過
    2014-07-07
  • php查看當(dāng)前Session的ID實(shí)例

    php查看當(dāng)前Session的ID實(shí)例

    這篇文章主要介紹了php查看當(dāng)前Session的ID的方法,實(shí)例分析了兩種常見的獲取session中ID的技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-03-03
  • php異步:在php中使用fsockopen curl實(shí)現(xiàn)類似異步處理的功能方法

    php異步:在php中使用fsockopen curl實(shí)現(xiàn)類似異步處理的功能方法

    下面小編就為大家?guī)硪黄猵hp異步:在php中使用fsockopen curl實(shí)現(xiàn)類似異步處理的功能方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-12-12
  • PHPUnit 單元測(cè)試安裝與使用入門教程

    PHPUnit 單元測(cè)試安裝與使用入門教程

    這篇文章主要介紹了PHPUnit 單元測(cè)試安裝與使用,結(jié)合實(shí)例形式分析了PHPunit單元測(cè)試的下載、安裝、測(cè)試運(yùn)行相關(guān)操作技巧與使用注意事項(xiàng),需要的朋友可以參考下
    2020-04-04
  • PHP請(qǐng)求微信接口獲取用戶電話號(hào)功能示例

    PHP請(qǐng)求微信接口獲取用戶電話號(hào)功能示例

    這篇文章主要介紹了PHP請(qǐng)求微信接口獲取用戶電話號(hào)功能,簡(jiǎn)單講述微信請(qǐng)求接口獲取用戶信息的相關(guān)功能,結(jié)合具體實(shí)例形式分析了php調(diào)用微信請(qǐng)求接口獲取用戶電話號(hào)碼的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2023-07-07
  • php的擴(kuò)展寫法總結(jié)

    php的擴(kuò)展寫法總結(jié)

    在本篇文章里小編給大家分享了關(guān)于怎么寫php的擴(kuò)展的相關(guān)知識(shí)點(diǎn)內(nèi)容,有需要的朋友們跟著學(xué)習(xí)下。
    2019-05-05
  • php求數(shù)組全排列,元素所有組合的方法

    php求數(shù)組全排列,元素所有組合的方法

    這篇文章主要介紹了php求數(shù)組全排列,元素所有組合的方法,涉及php針對(duì)數(shù)組與字符串的分割、遍歷、數(shù)學(xué)運(yùn)算等技巧,需要的朋友可以參考下
    2016-05-05
  • php實(shí)現(xiàn)與python進(jìn)行socket通信的方法示例

    php實(shí)現(xiàn)與python進(jìn)行socket通信的方法示例

    這篇文章主要介紹了php實(shí)現(xiàn)與python進(jìn)行socket通信的方法,結(jié)合實(shí)例形式分析了php使用自定義類發(fā)送socket請(qǐng)求數(shù)據(jù)及Python接收socket數(shù)據(jù)并處理請(qǐng)求等相關(guān)操作技巧,需要的朋友可以參考下
    2017-08-08

最新評(píng)論

林甸县| 东丽区| 祥云县| 甘谷县| 平利县| 汝州市| 宣城市| 凯里市| 藁城市| 定远县| 西贡区| 兰考县| 通州区| 宿迁市| 蓬莱市| 沧州市| 黄梅县| 隆化县| 论坛| 新兴县| 九江县| 改则县| 南涧| 罗源县| 泸定县| 宁南县| 遂宁市| 苗栗县| 巴青县| 钦州市| 柯坪县| 平乡县| 长武县| 建始县| 潼南县| 神农架林区| 蕲春县| 宣恩县| 长兴县| 和龙市| 修文县|