国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

php ignore_user_abort() 函數設置與客戶機斷開腳本繼續執行

2024-04-25 20:35:41
字體:
來源:轉載
供稿:網友

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()函數實現一個循環腳本執行任務

<?php

ignore_user_abort();

set_time_limit(0);

$interval=60*15;//說明:每隔15分鐘循環執行

do{

//執行的業務

7

}while(true);

(2)自定義實現文件輸出并跟蹤ignore_user_abort()函數的執行結果

ignore_user_abort(TRUE);

set_time_limit(0);

$interval=10;

$stop=1;

do{

if($stop==10) break;

file_put_contents('phpernote.com.php',' Current Time: '.time().' Stop: '.$stop);

$stop++;

sleep($interval);

}while(true);

打開 phpernote.com.php 文件,文件內容如下:

Current Time: 1273735029 Stop: 9

其原理是即使客戶端終止腳本,仍然每隔10秒鐘執行一次,并打印出當前時間與終止點,這樣就可以測試出ignore_user_abort()函數的具體效果。

通過實例發現使用 ignore_user_abort()函數在實現計劃任務,持續進程等方面的業務時候還是非常實用的。

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 绥德县| 凌源市| 孟连| 横峰县| 罗田县| 禹州市| 兴国县| 诸暨市| 武安市| 丹江口市| 翁牛特旗| 布拖县| 中超| 通许县| 武定县| 芦山县| 施甸县| 兴业县| 莱州市| 余干县| 酒泉市| 商水县| 嫩江县| 临洮县| 红安县| 潞西市| 玉山县| 马山县| 汽车| 德安县| 佛坪县| 晋城| 高安市| 定陶县| 周口市| 肃南| 揭阳市| 高雄县| 安化县| 亚东县| 富蕴县|