php ignore_user_abort() 函數設定與客戶機斷開指令碼繼續執行
ignore_user_abort() 可以實現當用戶端關閉後仍然可以執行PHP代碼,可保持PHP進程一直在執行,可實現所謂的計劃任務功能與持續進程,只需要開啟執行指令碼,除非 apache 等伺服器重啟或有指令碼有輸出,該PHP指令碼將一直處於執行的狀態,初看很實用,不過代價是一個PHP執行指令碼的持續進程,開銷很大,但卻可以 實現很多意想不到的功能。
定義和用法
ignore_user_abort() 函數設定與客戶機斷開是否會終止指令碼的執行。
本函數返回 user-abort 設定的之前的值(一個布爾值)。
文法
ignore_user_abort(setting)
參數 描述
setting 可選。如果設定為 true,則忽略與使用者的斷開,如果設定為 false,會導致指令碼停止運行。如果未設定該參數,會返回當前的設定。
注釋:PHP 不會檢測到使用者是否已中斷連線,直到嘗試向客戶機發送資訊為止。簡單地使用 echo 語句無法確保資訊發送,參閱 flush() 函數。
使用樣本:
(1)結合set_time_limit()函數實現一個迴圈指令碼執行任務
(2)自訂實現檔案輸出並跟蹤ignore_user_abort()函數的執行結果
開啟 phpernote.com.php 檔案,檔案內容如下:
Current Time: 1273735029 Stop: 9
其原理是即使用戶端終止指令碼,仍然每隔10秒鐘執行一次,並列印出目前時間與終止點,這樣就可以測試出ignore_user_abort()函數的具體效果。
通過執行個體發現使用 ignore_user_abort()函數在實現計劃任務,持續進程等方面的業務時候還是非常實用的。
您可能感興趣的文章
- thinkphp頁面跳轉(successerror)如何設定跳轉等待時間
- php window平台類比checkdnsrr函數檢測email是否真實存在
- php利用filter函數驗證郵箱、url和ip地址的方法
- Jquery等待ajax執行完畢再繼續執行下面代碼的效果
- php get_headers函數的作用及用法
- 用PHP函數memory_get_usage擷取當前PHP記憶體消耗量以實現程式的效能最佳化
- php用ZipArchive函數實現檔案的壓縮與解壓縮
- php如何判斷當前的作業系統是linux還是windows
http://www.bkjia.com/PHPjc/1008339.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1008339.htmlTechArticlephp ignore_user_abort() 函數設定與客戶機斷開指令碼繼續執行 ignore_user_abort() 可以實現當用戶端關閉後仍然可以執行PHP代碼,可保持PHP進程一直在...