• 締切済み

IE8でのPHPの処理の途中結果表示方法について

PHPの処理の途中結果を表示させようとして、下記ブラウザで結果を確認しました。 -処理内容- for($i = 0;$i<10;$i++){ ~とある処理~ ob_flush(); flush(); } --- ・Firefox ・Google Chrome  ・Internet Explorer 8(以下IE8) IE8以外だと想定通りの結果が表示されますが、IE8のみ、全ての処理が完了してから、表示されます。 Googleで検索した所、IE(IE8かどうかは不明)だと256バイトの出力を受けてからページを表示し始める、と書いてあったので、下記処理を追加しました。 参考:http://php.net/manual/ja/function.flush.php -処理内容- for($i = 0;$i<10;$i++){ ~とある処理~ for($ie = 0;$ie<256;$ie++){ echo ' '; } ob_flush(); flush(); } --- しかし、結果は変わりませんでした。 IE8で、PHPの処理の途中結果を表示させる方法についてアドバイス頂けないでしょうか。 宜しくお願い致します。

みんなの回答

  • nda23
  • ベストアンサー率54% (777/1415)
回答No.2

デバッグで何らかの経過を見たいなら レスポンスじゃなくてlog4phpを使うことも 考えたら如何でしょう。 http://www.nurs.or.jp/~sug/soft/log4j/log4php1.htm

iagusak
質問者

お礼

ご回答ありがとうございます。 >デバッグで何らかの経過を見たいなら >レスポンスじゃなくてlog4phpを使うことも考えたら如何でしょう。 log4phpは扱ったことが無い(初めて聞いた)ので、参考にさせていただきます。 今回はデバッグ目的ではなく、WEBページ上に、PHPの途中処理の結果を出力させたかったのですが、ここの処理以外に問題がある可能性があるので、後は自力で解決したいと思います。 有難うございました。

回答No.1

for($ie = 0;$ie<256;$ie++){ echo ' '; } for($i = 0;$i<10;$i++){ ~とある処理~ ob_flush(); flush(); }

iagusak
質問者

お礼

ご回答有難うございます。 for文のとある処理の手前で、空白256個を出す処理を行うようにしましたが、 結果は変わりませんでした。 ここの処理以外に問題がある可能性があるので、後は自力で解決したいと思います。 有難うございました。

関連するQ&A

専門家に質問してみよう