当前位置: 首页> 函数类别大全> ignore_user_abort

ignore_user_abort

设置客户端断开连接时是否中断脚本的执行
名称:ignore_user_abort
分类:杂项
所属语言:php
一句话介绍:设置远程客户端是否可以中止正在运行的脚本。

ignore_user_abort

适用 PHP 版本

PHP 4 及以上版本

函数说明

ignore_user_abort() 函数用于设置脚本在客户端断开连接后是否继续执行。

当用户终止页面请求(如关闭浏览器或断开网络连接)时,默认情况下 PHP 脚本会中止执行。调用 ignore_user_abort(true) 可以让脚本忽略用户断开连接,继续执行直到脚本自然结束或显式终止。

函数语法

bool ignore_user_abort ([ bool $value = NULL ])

参数

$value (可选) — 如果设置为 true,表示忽略用户断开连接,脚本会继续执行;如果设置为 false,脚本会在用户断开连接时停止执行。如果不传入参数,则返回当前的设置状态。

返回值

返回之前的设置状态,true 表示忽略用户断开连接,false 表示不忽略。

示例

<?php
// 设置忽略用户断开连接,脚本会继续执行
ignore_user_abort(true);
<p>// 脚本执行一个长时间任务<br>
for ($i = 0; $i < 10; $i++) {<br>
echo "正在执行任务步骤 $i...\n";<br>
flush(); // 输出缓冲区内容,及时发送给客户端<br>
sleep(3);<br>
}<br>
echo "任务完成。";<br>
?><br>

示例代码的说明

以上示例中,调用 ignore_user_abort(true) 后,即使用户关闭浏览器或断开连接,PHP 脚本依然会继续执行循环中的任务步骤,直到所有步骤完成并输出“任务完成”。flush() 函数用于立即将输出发送给客户端,便于观察执行过程。

同类函数