Введение
Функции управления выводом позволяют вам контролировать вывод, отправляемый скриптом. Это может быть полезно в различных ситуациях, особенно если вам необходимо отправить заголовки в браузер после того, как ваш скрипт уже начал выводить данные. Функции управления выводом не влияют на заголовки, отправленные с помощью функций header() или setcookie(), а влияют только на такие функции, как echo и данные между блоками PHP кода.
Замечание:
При обновлении с PHP 4.1.x (и 4.2.x) до 4.3.x в связи с ошибкой работы более ранних версий необходимо убедиться, что implicit_flush установлен в OFF в вашем php.ini, в противном случае любой вывод с ob_start() будет все равно отправляться в браузер.
Коментарии
[In English:]
it's seem have performance impact, try this with and without bufferisation ( by output_buffering = 4096, or ob_start + ob_end_flush, it looks similar)
[En Francais:]
Ca semble avoir un fort impact sur les performances aussi, essayez ca avec et sans bufferisation ( par output_buffering = 4096, ou bien ob_start + ob_end_flush, ca semble identique)
<?php
for ($j=1; $j <= 5; $j++) {
list($usec, $sec) = explode(" ",microtime());
$debut[$j] = ((float)$usec + (float)$sec);
echo str_repeat("0123456789",5000) . '<br>' ;
list($usec, $sec) = explode(" ",microtime());
$fin[$j] = ((float)$usec + (float)$sec);
}
for ($j=1; $j <= 5; $j++) {
echo round($fin[$j]-$debut[$j], 5) . '<br>';
}
?>