php实现异步方法之一(php对于curl或浏览器或ajax请求立即返回结果,返回结果后的php代码还能继续执行)

本文介绍了一段PHP代码,用于将长连接转换为短连接,并详细解释了如何通过设置Content-Length和Connection头,以及使用ob_*函数来实现这一目标。此外,还展示了如何通过ignore_user_abort和ini_set函数来优化PHP脚本的执行时间和资源占用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如题: 

服务端php代码如下:(浏览器和curl的请求都可以使用)

//要输出到浏览器的内容, nginx服务器缓存内容需要大于65536才能输出
$str = str_repeat(' ', 65536);  
//告诉浏览器数据长度,浏览器接收到此长度数据后就不再接收数据
header("Content-Length:" . strlen($str));
//告诉浏览器关闭当前连接,即为短连接
header("Connection: close");
ob_end_clean ();
ob_start();
echo $str;//在浏览器上显示
ob_end_flush();
if (ob_get_level() > 0) {
    ob_flush();
}
flush();
//忽略用户终端请求
ignore_user_abort(true);
//  设置最大执行时间为15分钟
ini_set("max_execution_time", "666");

//str结果返回给浏览器后, 你仍然要执行的代码写在下方

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值