Пример использования fastcgi_finish_request()
Может кто-нибудь показать простой пример о том, как использовать fastcgi_finish_request()
функционировать? Я гуглил, но нашел только общее упоминание об этом, некоторые люди говорят, что они успешно его используют, но я не смог найти ни одного примера с кодом.
Например, у меня есть объект PHP. Чтобы отправить ответ браузеру, я генерирую HTML, а затем возвращаю его через getResult()
, Затем подтвердите результат.
Как это:
$obj = new controller();
echo $o->getResult();
Допустим, я хочу воспользоваться этой техникой оптимизации, чтобы отправить результат в браузер, а затем завершить какой-то потенциально долгий процесс, такой как подключение к какому-либо API, например, API Facebook.
Как бы я поступил так? Я понимаю, что в принципе я могу позвонить fastcgi_finish_request();
и затем продолжите выполнение сценария php.
Мне просто нужно увидеть пример кода, я не достаточно умен, чтобы понять это сам.
1 ответ
Я понимаю, что в основном я могу вызвать fastcgi_finish_request(); и затем продолжите выполнение сценария php.
Да, это все, что вам нужно сделать.
$obj = new controller();
echo $o->getResult();
fastcgi_finish_request();
do_facebook_thing();
Чтобы убедиться, что это работает, сделайте следующее:
echo "Test";
fastcgi_finish_request();
sleep(10);
Если вы удалите вторую строку, то увидите, что браузер должен ждать 10 секунд.