(PHP 4, PHP 5, PHP 7, PHP 8)
ob_end_flush — 冲刷出(送出)输出缓冲区内容并关闭缓冲区
这个函数将送出最顶层缓冲区的内容(如果有),并关闭此缓冲区。如果想进一步处理缓冲区中的内容,必须在 ob_end_flush() 之前调用 ob_get_contents(),因为在调用 ob_end_flush() 后缓冲区内容被丢弃。
输出缓冲区必须带有 PHP_OUTPUT_HANDLER_FLUSHABLE 和 PHP_OUTPUT_HANDLER_REMOVABLE flag 的 ob_start() 启动。否则 ob_end_flush() 将不起作用。
注意: 这个函数与 ob_get_flush() 相似,不同的是 ob_get_flush() 会把缓冲区中的内容作为字符串返回。
此函数没有参数。
成功时返回 true
, 或者在失败时返回 false
。 错误的原因首先是没有在激活的缓冲区中调用该函数,或者是因为某些原因缓冲区不能被删除(可能是特殊缓冲区)。
如果函数失败了,将生成 E_NOTICE
异常。
示例 #1 ob_end_flush() 示例
下面的例子给出了一种送出缓冲区内容并关闭所有输出缓冲区的容易的方法:
<?php
while (@ob_end_flush());
?>