开发中经常会遇到这种情况:当用户触发某个请求后,需要PHP做一些处理,但是不需要用户等待处理完成,也就是请求需要快速响应并结束,但结束后需要PHP在运行一段时间做一些收尾的处理。
这里就使用到了fastcgi_finish_request
if (!function_exists("fastcgi_finish_request")) {
function fastcgi_finish_request() {
}
}
fastcgi_finish_request();
set_time_limit(0);//避免超时
ini_set('memory_limit','-1'); //避免内存不足
sleep(1);
//后台自行执行的业务逻辑
因为这个函数只在FastCGI模式下存在,考虑可移植性可以加上以下代码
if (!function_exists("fastcgi_finish_request")) {
function fastcgi_finish_request() {
}
}
网友评论