0

文字列を特定の回数繰り返すことで、WAMPサーバーに単純なwhileループを実装しようとしています。ただし、WAMP PHP設定で出力バッファリングをオフにしているにもかかわらず、出力全体が一度に発生します。

バージョン1

$i = 0;
while ($i < 5)
{
print ("This is an example of a while loop.<br/>");
flush();
sleep(1);
$i++;

}

バージョン2

$i = 0;
while ($i < 5)
{
print ("This is an example of a while loop.<br/>");
ob_start();
ob_flush();
flush();
sleep(1);
$i++;

}

どちらのバージョンも、私が意図している方法で文字列を出力しません。つまり、1秒間隔で一度に1つずつ出力します。どんな助けでも大歓迎です。

4

3 に答える 3

0

私はいつもWAMPとフラッシュに問題があり、最終的にはWAMPでは単に壊れているという結論に達しました。私が持っているサーバー設定に関係なく、WAMPのパッケージ化方法に何かがあり、それは機能しないようです。

それを機能させる唯一の方法は、XAMPPを使用するか、独自のサーバーをインストールして構成することです。

于 2012-12-15T13:49:54.990 に答える
0

ジャスティンの回避策でもうまくいかない人のために。ワンプ x64 でテスト済み。

// Necessary Settings and stuff for output buffering to work right
apache_setenv('no-gzip', 1);
ini_set('zlib.output_compression', 0);
ini_set('implicit_flush', 1);
ini_set('output_buffering', "off");

// Start a new output buffer and send some blank data to trick browsers
ob_start();
echo str_repeat(" ", 4096);
ob_end_flush(); //addition
ob_flush();
flush();

for ($i=0; $i < 10; $i++) {
    ob_start(); //addition
    echo "<div>Echo Something...</div>\n";

    ob_end_flush(); //addition
    ob_flush();
    flush();
}
于 2015-06-24T12:51:27.000 に答える