PHP中基於sleep函數實現定時執行功能的方法

來源:互聯網
上載者:User
在PHP中,有一個sleep函數,大概意思是程式執行遇到sleep函數時暫停N秒後繼續往下執行。如sleep(10)意思就是程式自上往下執行,遇到sleep(10)語句後暫停十秒,然後繼續往下執行

在一些競猜的網站中,如果我們需要做一個定時執行的功能,比如有一道題,在十秒之內要完成,否則顯示“您已逾時”,如果完成,則跳轉到下一道題上面,而這中間有一個十秒的停頓,這樣的功能是怎樣實現的呢?

在PHP中,有一個sleep函數,大概意思是程式執行遇到sleep函數時暫停N秒後繼續往下執行。如sleep(10)意思就是程式自上往下執行,遇到sleep(10)語句後暫停十秒,然後繼續往下執行。函數括弧內的參數是一個數值,代表暫停時間值,單位秒。請看下面一段代碼:

<?php// current timeecho date('h:i:s') . "\n";// sleep for 10 secondssleep(10);// wake up !echo date('h:i:s') . "\n";?>

以上程式執行結果是:

05:31:23

05:31:33

可能某些童鞋做執行個體的時候會說怎麼我的程式執行出錯,提示逾時。出現這個問題不要慌,這是PHP預設頁面執行時間導致的,在PHP中預設執行頁面時間是三十秒鐘,這對於一般程式夠用了。但如果你要做類似定時執行功能就必須再頭部聲明設定下執行時間set_time_limit(0)。0是代表不限時,單位是秒。

如果執行時間超過30秒,再執行操作記得要再次串連MYSQL,否則執行無效!!!原因是執行時間過長以後資料庫連接可能斷開問題,也就不能讀到資料庫資訊!

去操作一下吧,為自己的執行個體添一個暫停功能,然後再往下進行執行。

總結:以上就是本篇文的全部內容,希望能對大家的學習有所協助。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.