发送响应后,PHP 7继续执行

时间:2018-05-17 05:05:08

标签: php httpresponse fastcgi

我正在尝试从函数向客户端发送响应数据并继续执行。我按照下面的代码

ignore_user_abort(true);
set_time_limit(0);

ob_start();
// do initial processing here
echo $response; // send the response
header('Connection: close');
header('Content-Length: '.ob_get_length());
ob_end_flush();
ob_flush();
flush();
// check if fastcgi_finish_request is callable
if (is_callable('fastcgi_finish_request')) {
    fastcgi_finish_request();
}

得到问题的代码

continue processing php after sending http response

我得到的只是200 ok响应,但不是我回复的数据。

我也需要获取响应数据。我使用的是php7.1。 php5和7之间有什么区别吗?

请帮忙

1 个答案:

答案 0 :(得分:0)

您需要做的就是

set_time_limit(0);

echo $response; // send the response

// check if fastcgi_finish_request is callable
if (is_callable('fastcgi_finish_request')) {
    fastcgi_finish_request();
}