ホームページ  >  記事  >  バックエンド開発  >  phpは結果を待たずに直接返します

phpは結果を待たずに直接返します

angryTom
angryTomオリジナル
2019-10-29 16:39:554173ブラウズ

phpは結果を待たずに直接返します

#php は結果を待たずに直接返します

イベントをトリガーするためだけに php をリクエストすることがありますが、実行時間と結果に関係なく、すぐにブラウザにメッセージを返して切断する必要があります。たとえば、「タスクは開始されました!」を返します。これを実現するにはどうすればよいでしょうか? fastcgi_finish_request() を使用してブラウザから切断できます。具体的な実装は次のとおりです:


<?php
echo "这个是输出到浏览器的内容";
// =======这部分是将输出内容刷新到用户浏览器并断开和浏览器的连接=====
// 如果使用的是php-fpm
if(function_exists(&#39;fastcgi_finish_request&#39;)){
    // 刷新buffer
    ob_flush();
    flush();
    // 断开浏览器连接
    fastcgi_finish_request();
}
// 后台继续执行任务
sleep(2);
file_put_contents(&#39;/tmp/test.log&#39;, &#39;ok&#39;);

PHP 関連の詳細については、

PHP 中国語 Web サイト##をご覧ください。 #!

以上がphpは結果を待たずに直接返しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。