PHP: ob_get_flush - Manual (original) (raw)

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

ob_get_flush — Flush (send) the return value of the active output handler, return the contents of the active output buffer and turn it off

Description

ob_get_flush() will fail without an active output buffer started with the**[PHP_OUTPUT_HANDLER_REMOVABLE](outcontrol.constants.php#constant.php-output-handler-removable)** flag.

ob_get_flush() will flush (send) the return value of the output handler even if the active output buffer was started without the**[PHP_OUTPUT_HANDLER_FLUSHABLE](outcontrol.constants.php#constant.php-output-handler-flushable)** flag.

Parameters

This function has no parameters.

Return Values

Returns the contents of the active output buffer on success or [false](reserved.constants.php#constant.false) on failure.

Errors/Exceptions

If the function fails it generates an [E_NOTICE](errorfunc.constants.php#constant.e-notice).

Examples

Example #1 ob_get_flush() example

<?php
//using output_buffering=On
print_r(ob_list_handlers());

//save buffer in a file
$buffer = ob_get_flush();
file_put_contents('buffer.txt', $buffer);

print_r(ob_list_handlers());
?>

The above example will output:

Array ( [0] => default output handler ) Array ( )

See Also

Found A Problem?

info at pcdoctor dot fr

18 years ago

Hi,
this is just to add a behavior that I haven't understud at first place.

ob_get_flush actually returns the content of the buffer as a text but also it sends the buffer back to the browser so that it's displayed on user screen.

Use ob_get_clean if you do not want the buffer to be send to the user