首頁 >後端開發 >php教程 >PHP中基於sleep函數實作定時執行功能的方法

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

墨辰丷
墨辰丷原創
2018-06-01 14:51:551671瀏覽

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

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

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

<?php
// current time
echo date(&#39;h:i:s&#39;) . "\n";
// sleep for 10 seconds
sleep(10);
// wake up !
echo date(&#39;h:i:s&#39;) . "\n";
?>

以上程式執行結果是:

05:31:23

05:31:33

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

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

去操作一下吧,為自己的實例增加一個暫停的功能,然後再往下執行。

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

相關推薦:

PHP數組相加操作及與array_merge的區別

PHP使用curl函數發送Post請求的注意事項

php源碼之將圖片轉換為data/base64資料流詳解

##

以上是PHP中基於sleep函數實作定時執行功能的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn