使用ob_start()进行PHP输出缓冲:在脚本终止时会发生什么?

时间:2014-08-08 12:02:28

标签: php output-buffering

我在我的脚本中使用ob_start()打开输出缓冲。

当我的脚本终止时,a)输出缓冲区自动擦除,b)输出缓冲是否自动关闭?

必须我使用的是ob_end_clean()

参考:http://php.net/manual/en/function.ob-start.php

1 个答案:

答案 0 :(得分:2)

任何活动的输出缓冲区都会在脚本结束时自动刷新。即使您没有显式刷新缓冲区,所有缓冲的输出也会刷新到客户端。默认是刷新,而不是丢弃。

您不必“关闭”输出缓冲。万一你可能会受到这种印象:输出缓冲不会在脚本结束后“保持”状态。输出缓冲是一个单实例的事情,在一个脚本中“保持打开”不会影响另一个脚本。