In this article, you will learn how to create an output buffer in PHP. The ob_start() function in PHP creates an output buffer.
A callback function can be passed in to do processing on the contents of the buffer before it gets flushed from the buffer. Flags can be used to permit or restrict what the buffer is able to do.
what is the syntax of the OB_START() function in php?
ob_start(callback, chunk_size, flags);
|callback||Optional. A callback used to process the contents of the buffer before it gets flushed.|
The callback function should have the following parameters:ParameterDescriptionbufferThe contents of the output bufferphaseA bitmask which may have any number of the following flags:
PHP_OUTPUT_HANDLER_START – If the output buffer was just created
PHP_OUTPUT_HANDLER_FLUSH – If the output buffer is currently being flushed
PHP_OUTPUT_HANDLER_FINAL – If the output buffer will be deleted right after this operation
|chunk_size||Optional. Defaults to 0. When set to a value greater than zero, the buffer will automatically be flushed as soon as the length of the contents exceeds this value|
|flags||Optional. Defaults to PHP_OUTPUT_HANDLER_STDFLAGS.|
A bitmask which determines what operations the buffer is permitted to do. It may contain the following flags:
PHP_OUTPUT_HANDLER_CLEANABLE – Calls to ob_clean(), ob_end_clean() and ob_get_clean() are permitted.
PHP_OUTPUT_HANDLER_FLUSHABLE – Calls to ob_flush(), ob_end_flush() and ob_get_flush() are permitted.
PHP_OUTPUT_HANDLER_REMOVABLE – Calls to ob_end_clean(), ob_end_flush() and ob_get_flush() are permitted.
PHP_OUTPUT_HANDLER_STDFLAGS – Equivalent to
examples of the OB_START() function
Example 1. In this example, we create an output buffer.
<?php ob_start(); echo "This content will not be sent to the browser."; ob_end_clean(); echo "This content will be sent to the browser."; ?>