0
ob_start();

for($i=1; $i<=10; $i++){
  echo 'FUU';
  $output = ob_get_contents();
}

echo $output;
ob_end_flush();  

つまり、1 FUU の代わりに 10 が得られます。動作しないのはなぜob_start()ですか?

4

1 に答える 1

2

私はあなたがそれが何をしているのか理解していないと思います。ウォークスルーは次のとおりです。

$i = 1
Output buffer = FUU
ob_get_contents()/$output = FUU

$i = 2
Output buffer = FUUFUU
ob_get_contents()/$output = FUUFUU

$i = 3
Output buffer = FUUFUUFUU
ob_get_contents()/$output = FUUFUUFUU

ob_get_contents各反復を呼び出すと、 echoed されたすべてのものが取得されます。

于 2011-04-24T13:55:40.033 に答える