PHP8 flush — 刷新系统输出缓冲区

2023-09-11 11:13 更新

(PHP 4, PHP 5, PHP 7, PHP 8)

flush — 刷新系统输出缓冲区

说明

flush(): void

刷新 PHP 的系统写入缓冲区,且不管 PHP 使用什么后端(CGI、Web 服务器等)。尝试推送当前输出到浏览器,但有一些警告。

flush() 无法覆盖 Web 服务器的缓冲方案,并且不会对任何浏览器中的客户端缓冲起作用。也不会对 PHP 的用户级别输出缓冲机制起作用。这意味着 ob_flush() 应该在 flush() 之前调用,以刷新缓冲区(如果正在使用)。

个别服务器,特别是 Win32,在结果传输到浏览器之前,仍然会缓冲脚本的输出,直到程序结束为止。

Apache 的服务器模块(比如 mod_gzip),可能自己进行输出缓冲,这将导致 flush() 不会将数据立即发送到客户端浏览器。

甚至浏览器也会在显示之前进行输入缓冲。例如 Netscape 浏览器会在接受到行尾或开始标记之前缓冲文本,且在接收到 </table> 标记之前,不会渲染出整个表格。

Microsoft Internet Explorer 的某些版本只有当接收到的 256 个字节的输出以后才开始显示页面,所以必须在刷新之前发送额外的空格来让这些浏览器显示页面。

参数

此函数没有参数。

返回值

没有返回值。

参见

  • ob_flush() - 冲刷出(送出)输出缓冲区中的内容
  • ob_clean() - 清空(擦掉)输出缓冲区
  • ob_end_flush() - 冲刷出(送出)输出缓冲区内容并关闭缓冲区
  • ob_end_clean() - 清空(擦除)缓冲区并关闭输出缓冲


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号