如果我经常使用echo,我应该使用输出缓冲吗?

时间:2011-08-01 01:51:50

标签: php output-buffering

嗨,这是一个基本问题,但我不确定,所以我问你:

如果我的html代码中有超过100个php回声,就像这样:

file.php:

<!-- headers -->
<h1><?php echo $text1; ?></h1>
<p><?php echo $text20; ?></p>
<p><?php echo $text10; ?></p>
<!-- more code -->

我应该使用输出缓冲吗?如果是这样,那么“显示”输出的正确方法(或函数)是什么?

提前致谢!

1 个答案:

答案 0 :(得分:2)

输出缓冲是一个主要原因的理想选择,而不是减少回声的数量。它是理想的,因为它允许您编写缓存文件并在请求时提供该静态缓存文件。然后你的PHP永远不会直接输出到浏览器,它总是写入文件,然后加载并显示到浏览器。假设您将缓存过期标头设置为合理的持续时间,这将提高性能,而不是担心输出数据的“方式”。

典型案例:

  1. 用户访问'contact.php'
  2. 'contact.php'检查现有缓存文件
  3. 如果文件存在且不需要刷新,只需显示文件并退出。
  4. 如果文件存在且需要刷新,则(重新)将所有缓冲的输出写入其中并显示它。
  5. 如果文件不存在,请参阅步骤4.