【发布时间】:2012-10-17 13:47:13
【问题描述】:
我的目标是在我的 php 脚本将页面的其余部分拼接在一起并在完成后发送它时,尽早刷新我网站的标题部分。重要的是块被压缩发送到浏览器。 (我使用的是 Apache/2.2 和 PHP/5.3.4)
现在我正在尝试通过在我的 PHP 脚本中调用 ini_set("zlib.output_compression", "On") 来实现这一点。但是,如果我在脚本中的任何地方使用 flush(),即使在最后,压缩也将不再起作用。
问题是:
a) 通过使用这种方法,zlib 将刷新输出缓冲区并在达到此输出缓冲区的大小后将压缩块发送到浏览器?
b) 如果是这样,有什么方法可以通过设置 zlib 的内部缓冲区大小来精细控制 zlip 何时发送我的块 not?默认为 4KB。
c) 是否有任何好的替代方法可以实现早期压缩刷新,可能对我想要刷新的时间进行更精细的控制?也许我完全走错了路:)
【问题讨论】:
-
我在 php.net 上发现了一个关于这个问题的有趣评论:php.net/manual/en/function.gzopen.php#105676
标签: php html document zlib flush