ProfiPHPProfiPHP
Категория: Функции управления выводом

Функция Ob_end_flush

Функция Ob_end_flush отключает буферизацию и выводит содержимое буфера.
bool ob_end_flush( void )
Аргумент Void данной функции указывает лишь на то, что функция объявляется без параметров.

Функция Ob_end_flush отправит содержимое буфера вывода (если оно имеется) и отключит эту буферизацию вывода. Если вы хотите использовать содержимое буфера, то вам необходимо вызвать Ob_get_contents перед Ob_end_flush, то есть все содержимое буфера удаляется при вызове Ob_end_flush.

Буфер вывода должен запускаться функцией Ob_start с флагами PHP_OUTPUT_HANDLER_FLUSHABLE и PHP_OUTPUT_HANDLER_REMOVABLE.

Данная функция похожа за результатом выполнения на функцию Ob_get_contents, в отличии лишь в том, что еще и очищает и отключает буферизацию вывода, то есть ее не можно использовать несколько раз, в отличии от Ob_get_contents.

Функция Ob_end_flush возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки. Основной причиной неудачного завершения работы функции является ее вызов без активной буферизации или если буфер не может быть удален. Если функция завершается ошибкой генерируется E_NOTICE:
Notice: ob_end_flush(): failed to delete and flush buffer. No buffer to delete or flush in file.php on line ...
Пример использования:
// Включаем буфер
ob_start( );
// выводим информацию
echo 'Hello World';
// отключаем буферизацию и выводим содержимого буфера:
ob_end_flush( );
Результатом выполнения будет строка 'Hello World', которую выведет функция Ob_end_flush.

Добавить комментарий

Имя:
Текст комментария: