解決辦法:
- 設定頁面逾時時間
- 設定
為falseignore_user_abort
- 判斷
connection_aborted
注:方法 2/3 都是通過與用戶端的互動擷取到的頁面狀态,所有必須存在實時輸出。
采用 2 時,當浏覽器關閉後,程式自動終止;
采用 3 的話,可以進行後續操作,例如,使用者中途關閉頁面後,記錄日志
<?php
//ignore_user_abort(false);
$i = 1;
while (1) {
if (!connection_aborted()) {
file_put_contents('hah.txt', $i . PHP_EOL, FILE_APPEND);
echo 1;
ob_flush();
flush();
sleep(1);
$i ++;
} else {
file_put_contents('stop.txt', $i . PHP_EOL);
exit();
}
}