【发布时间】:2013-10-27 21:51:42
【问题描述】:
我想知道如何最好地压缩我的输出。
通常我只是在index.php 的顶部添加ob_start('ob_gzhandler'),以压缩整个输出。
我正在使用一个简单的缓存类将生成的 HTML 存储在一个文件 (index.cache.htm) 中,而不是在每次刷新时重新构建它。由于性能更好,index.cache.htm 的内容被缩小了。
我不能压缩缓存的内容而不是使用ob_start('ob_gzhandler')吗?
示例 1(缓存缓冲输出):
ob_start(); // start buffer
$b = ob_get_contents(); // get buffer
ob_end_clean(); // free buffer
$b = CustomHTMLMinifyFunction($b); // minify the HTML
$b = gzcompress($b); // compress the HTML
file_put_contents('index.cache.htm', $b); // save file
示例 2(缓存显式数据):
$d = 'Some data, e.g. JSON'; // some data
$d = gzcompress($d); // compress data
file_put_contents('data.cache.txt', $d); // save file
有什么区别或最佳做法?提前致谢!
编辑:将压缩数据存储在文件中是否有意义?还是仅在输出数据时有用?
【问题讨论】:
标签: php performance caching gzip