首頁 > 後端開發 > PHP問題 > php關閉頁面仍執行的實作方法

php關閉頁面仍執行的實作方法

藏色散人
發布: 2023-03-03 21:08:01
原創
2849 人瀏覽過

在php中可以透過“ignore_user_abort”函數實現關閉頁面仍執行的功能,其語法是“ignore_user_abort(true); ”,表示儘管Client斷開,但PHP腳本也可以繼續執行。

php關閉頁面仍執行的實作方法

推薦:《PHP影片教學

PHP排程任務關閉瀏覽器後仍繼續執行的函數

函數名稱:ignore_user_abort

本函數設定或取得使用端連線中斷後,PHP 程式是否仍繼續執行。預設值為中斷連線後就停止執行。在 PHP 設定檔中 (php3.ini/php.ini) 的 ignore_user_abort 選項就是設定處。本功能在 PHP 3.0.7 版之後才開始提供。

官方說明:http://cn2.php.net/manual/en/function.ignore-user-abort.php

使用方法:

程式碼如下:

ignore_user_abort(true); //即使Client断开(如关掉浏览器),PHP脚本也可以继续执行.
登入後複製

這樣就可以實現計劃任務效果了.但是還是要客戶端訪問程序才行.

比如說在生成靜態頁面、採集的時候,不需要在等待了。關掉瀏覽器吧。

範例:

程式碼如下:

//test
set_time_limit(0);
ignore_user_abort(true);
$i = 0 ;
while($i ++ < 200){
file_put_contents($i.&#39;.php&#39; , $i);
sleep(3);
}
登入後複製

用ignore_user_abort函數實作php計畫任務

程式碼如下:

<?php
ignore_user_abort(true);
set_time_limit(0);
while(1) {
  $fp = fopen(&#39;time_task.txt&#39;,"a+");
  $str = date("Y-m-d h:i:s")."\n\r";
  fwrite($fp,$str);
  fclose($fp);
  sleep(5); //半小时执行一次
}
?>
登入後複製

以上是php關閉頁面仍執行的實作方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板