PHPでクライアントの切断を検出するにはどうすればよいですか. Nusoap ライブラリを使用する Web サービスがあり、Web サービス クライアントの切断を検出したいと考えています。私はこのコードで試します:
ignore_user_abort(true); // Continue running the script even when the client aborts/disconnects
ob_flush();
flush(); // Clean PHP's output buffer
usleep(500000);
echo "0\r\n\r\n";
ob_flush(); // Clean output buffer
flush(); // Clean PHP's output buffer
if(connection_aborted() != 0) {
//do something
}
動作しますが、2 つの問題があります。
- Flush() 関数が追加のヘッダーを追加すると、この警告が発生します: 警告: ヘッダー情報を変更できません - ヘッダーは既に .\lib\nusoap-0_9_5\lib\nusoap.php で送信されています...
- クライアント接続を確認するためにエコー "0\r\n\r\n" を送信した追加の文字が原因で、Web サービスの応答が適切にフォーマットされていません。
上記の問題を解決するにはどうすればよいですか? Web サービス クライアントの切断を検出する他の方法はありますか? ありがとう