0

代码本身非常大,所以这里是简化版本:

<?php
//set common headers
ob_start();
//generate the javascript source
$ret=ob_get_clean();
$handle=gzopen('cache/file.js.gz','wb');
gzwrite($handle,$ret);
gzclose($handle);
header('Content-Length: '.filesize('cache/file.js.gz'),true);
readfile('cache/file.js.gz');

有趣的部分。如果cache/file.js.gz不存在,则readfile('cache/file.js.gz');报告正确的大小。如果它确实存在,那么它会报告文件的旧大小。

我已经尝试在相同的结果fflush($handle)之后添加。gzwrite我没有尝试在写作之前取消链接文件。似乎是多余的一步。

输出文件通常很小。最大的是 5kB。

服务器信息:

  • 阿帕奇版本 2.2.23
  • PHP 版本 5.2.17
4

1 回答 1

1

clearstatcache()在获取文件统计信息之前调用

于 2013-04-17T15:07:03.633 回答