如何在后台codeigniter中调用函数

时间:2017-02-08 12:39:02

标签: php codeigniter

我的系统需要向许多用户发送电子邮件,发送许多用户确实需要时间。我不希望用户等待那段时间。

_send_mail函数用于各种控制器文件。我们有什么方法可以在后台发送电子邮件吗?

1 个答案:

答案 0 :(得分:2)

在这种情况下,您可以在发送邮件之前返回部分响应。因此,您将得到进一步处理的回复,您的电子邮件发送过程将在后台继续。

为此,创建一个会抛出像这样的分区响应的函数

    function partialResponse()
    {
        $response=array();
        ignore_user_abort(true);
        ob_start();
        echo json_encode($response);
        header("Status: 200");
        header($_SERVER["SERVER_PROTOCOL"] . " 200 Ok");
        header("Content-Type: application/json");
        header('Content-Length: '.ob_get_length());
        ob_end_flush();
        ob_flush();
        flush();
    }

并在发送电子邮件之前调用此函数

 $this->partialResponse();
在此之后,无论你想做什么,即发送电子邮件