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