8

php flush();に気付きました。3.6.12 で動作するため、Firefox 4 ベータ 7 では動作しません。

最近、Firefox 4 ベータ 7 をインストールしましたが、flush() が呼び出されたときにコンテンツがすぐにフラッシュされません。3.6.12 では問題なく動作していました。フラッシュ機能を提供できるものは他にありますか。

私はもう試した

flush();  
@ob_flush();

ページの上部にある次のコードも試しました。

@apache_setenv('no-gzip', 1);
@ini_set('zlib.output_compression', 0);
@ini_set('implicit_flush', 1);
for ($i = 0; $i < ob_get_level(); $i++) { ob_end_flush(); }
   ob_implicit_flush(1);

ちなみに私はXAMPP/Apacheでphpを使っています。ありがとう。


コンテンツ タイプを text/plain に設定すると機能することがわかりましたが、html コンテンツではなくプレーン テキストのみが出力されます。

4

2 に答える 2

6

あなたは幽霊を見ていません-私はFF3.6とFF4の間で同じ違いを経験しました。

回避策は次のとおりです。

echo str_repeat(" ", 1024);

フラッシュする必要がある出力の前。たとえば、<head>に配置できます。

私の理論では、FF4には、明らかにIEやSafariと同様に、インクリメンタルレンダリングを開始する前に埋める必要のある小さなバッファーがあります。

于 2011-03-25T08:34:01.910 に答える
1

flushブラウザに関係なく、サーバー側で同じように機能します。クライアントが異なる表示をしている場合、それを修正するためにサーバー側でできることはあまりありません。

于 2010-11-20T04:50:57.353 に答える