• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            牽著老婆滿街逛

            嚴以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            PHP定時執行計劃任務

            轉載自:http://www.cnblogs.com/phphuaibei/archive/2011/12/16/2290574.html

            摘要:PHP不支持多線程,有時候處理問題不是那么爽,今天談論一下PHP定時執行的方法

            PHP定時執行的三種方式實現

              1、windows 的計劃任務 
              2、linux的腳本程序 
              3、讓web瀏覽器定時刷新

               

            具體實現

            windows計劃任務

            PHP很少在win服務器上跑,具體實現也不再深究,看網上實現的原理大概是寫bat腳本,然后讓window任務添加執行這個bat腳本,具體可以參考:http://www.cnblogs.com/whoknows/articles/2228577.html

            linux 的腳本實現

            這里主要使用到crontab這個命令,

            使用方式 :

            crontab   filecrontab [ -u user ] [ -u user ] { -l | -r | -e }

            說明 :

            crontab 是用來讓使用者在固定時間或固定間隔執行程式之用

            使用crontab寫shell腳本,然后讓PHP調用shell,這個是利用linux的特性,應該還不算PHP自身語言的特性

            可以參看:http://www.centos.bz/2011/07/php-cron-job-linux-crontab/

            PHP實現定時執行計劃任務

               

              php

            使用php讓瀏覽器刷新需要解決幾個問題

            1. PHP腳本執行時間限制,默認的是30m 解決辦法:set_time_limit();或者修改PHP.ini 設置max_execution_time時間(不推薦)
            2. 如果客戶端瀏覽器關閉,程序可能就被迫終止,解決辦法:ignore_user_abort即使關閉頁面依然正常執行
            3. 如果程序一直執行很有可能會消耗大量的資源,解決辦法使用sleep使用程序休眠一會,然后在執行

            PHP定時執行的代碼:

            1
            2
            3
            4
            5
            6
            7
            8
            9
            10
            11
            12
            13
            14
            15
            16
            17
            18
            19
            20
            21
            22
            23
            24
            25
            26
            27
            <?php
            ignore_user_abort();//關掉瀏覽器,PHP腳本也可以繼續執行.
            set_time_limit(3000);// 通過set_time_limit(0)可以讓程序無限制的執行下去
            $interval=5;// 每隔5s運行
             
            //方法1--死循環
            do{
                echo '測試'.time().'<br/>';
                sleep($interval);// 等待5s   
            }while(true);
             
            //方法2---sleep 定時執行
                require_once './curlClass.php';//引入文件
                 
                $curl = new httpCurl();//實例化
                $stime = $curl->getmicrotime();
                for($i=0;$i<=10;$i++){
                     
                    echo '測試'.time().'<br/>';
                    sleep($interval);// 等待5s
                     
                }
                ob_flush();
                flush();
                $etime = $curl->getmicrotime();
                echo '<hr>';
                echo round(($etime-stime),4);//程序執行時間
            1
              

            測試的時候發現這個效率并不是很高,

            QQ截圖20111216110444

            總結:

            個人感覺PHP定時執行任務的效率不是很高,建議關于定時執行任務的工作還是交給shell來做吧,比較那才是王道。

            ps:那個死循環的方法好像是惡意攻擊網站經常使用的方法

            posted on 2014-06-15 10:01 楊粼波 閱讀(522) 評論(0)  編輯 收藏 引用

            亚洲国产综合久久天堂| 日日狠狠久久偷偷色综合免费 | 亚洲精品午夜国产VA久久成人| 2021久久精品免费观看| 久久久久亚洲av无码专区导航| 亚洲午夜久久久精品影院| 国产毛片久久久久久国产毛片| 色婷婷久久综合中文久久一本| 久久午夜无码鲁丝片| 成人a毛片久久免费播放| 99久久综合国产精品免费| 亚洲成色999久久网站| 国产aⅴ激情无码久久| 97超级碰碰碰碰久久久久| 97视频久久久| 久久久久国产一区二区| 国产精品无码久久综合| 思思久久好好热精品国产| 国产精品久久久久久福利漫画| 久久只有这里有精品4| 国产福利电影一区二区三区,免费久久久久久久精 | 区久久AAA片69亚洲| 精品久久久久中文字幕一区| 亚洲精品无码久久久久sm| 看全色黄大色大片免费久久久| 国产成人久久激情91| 午夜欧美精品久久久久久久 | 久久SE精品一区二区| 久久精品国产99久久丝袜| 国产精品禁18久久久夂久| 久久精品国产99久久久古代| 欧美久久天天综合香蕉伊| 国内精品久久久久久麻豆| 99久久成人18免费网站| 国产精品视频久久久| 99久久国语露脸精品国产| 精品久久久久久成人AV| 久久精品国产亚洲沈樵| 欧美久久综合性欧美| 国产精品免费久久久久影院 | 久久伊人五月天论坛|