ob_get_flush
(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
ob_get_flush — 冲刷(发送)活动输出处理程序的返回值,返回活动输出缓冲区的内容并将其关闭
说明
该函数调用输出处理程序(使用 PHP_OUTPUT_HANDLER_FINAL
flag),冲刷(发送)其返回值,返回活动输出缓冲区的内容并关闭活动输出缓冲区。
如果没有以 PHP_OUTPUT_HANDLER_REMOVABLE
flag 启动的活动输出缓冲区,ob_get_flush() 将失败。
ob_get_flush() 将冲刷(发送)输出处理程序的返回值,即使活动输出缓冲区是在没有
PHP_OUTPUT_HANDLER_FLUSHABLE
flag 的情况下启动的。
参数
此函数没有参数。
返回值
成功时返回活动输出缓冲区的内容,失败时返回 false
。
错误/异常
如果函数失败生成 E_NOTICE
。
示例
示例 #1 ob_get_flush() 示例
<?php
// 使用 output_buffering=On
print_r(ob_list_handlers());
// 保存缓冲区到文件
$buffer = ob_get_flush();
file_put_contents('buffer.txt', $buffer);
print_r(ob_list_handlers());
?>
以上示例会输出:
Array ( [0] => default output handler ) Array ( )
参见
- ob_start() - 打开输出控制缓冲
- ob_get_contents() - 返回输出缓冲区的内容
- ob_flush() - 冲刷(发送)活动输出处理程序的返回值
- ob_end_flush() - 冲刷(发送)活动输出处理程序的返回值,并关闭活动输出缓冲区
- ob_get_clean() - 获取活动缓冲区的内容并将其关闭
+添加备注
用户贡献的备注 1 note
info at pcdoctor dot fr ¶
16 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
备份地址:http://www.lvesu.com/blog/php/function.ob-get-flush.php