允许对缓冲区进行的操作可以通过将 缓冲区控制标志 之一传递给 ob_start() 的第三个 flags
参数来控制。如果省略,则默认允许所有操作。如果使用 0
,则无法刷新、清除或删除缓冲区,但其内容仍然可以检索。
PHP_OUTPUT_HANDLER_CLEANABLE
允许 ob_clean() 清除缓冲区的内容。
即使没有 PHP_OUTPUT_HANDLER_CLEANABLE
标志,也不会阻止 ob_end_clean() 或 ob_get_clean() 清除缓冲区的内容。
PHP_OUTPUT_HANDLER_FLUSHABLE
允许 ob_flush() 刷新缓冲区的内容。
即使没有 PHP_OUTPUT_HANDLER_FLUSHABLE
标志,也不会阻止 ob_end_flush() 或 ob_get_flush() 刷新缓冲区的内容。
PHP_OUTPUT_HANDLER_REMOVABLE
允许 ob_end_clean()、ob_end_flush()、ob_get_clean() 或 ob_get_flush() 关闭缓冲区。
PHP_OUTPUT_HANDLER_STDFLAGS
,这三个标志的组合将允许对缓冲区执行这三个操作。