查看: 1073|回复: 0

[PHP实例] php基于ob_start(ob_gzhandler)实现网页压缩功能的方法

发表于 2017-12-12 08:00:01

本文实例讲述了php基于ob_start('ob_gzhandler')实现网页压缩功能的方法。分享给大家供大家参考,具体如下:

PHP生成网页后传送给浏览器显示 ,页面的打开速度除了与用户的网速有关,往往也跟页面的大小有很关系,我们可以从网 页大小着手,以提高网页的响应速度。

下面的代码是一个压缩网页的例子,我们利用ob_gzip函数,使用ob_start将输出内容压缩后放到“缓冲区”后再输出 。

php代码

  1. //启用压缩
  2. if(function_exists('ob_gzip'))
  3. {
  4. ob_start('ob_gzip');
  5. }
  6. //准备一些待压缩的内容
  7. for($i=0; $i<100; $i++)
  8. {
  9. echo('这里是测试内容 <br>');
  10. }
  11. //输出压缩成果
  12. ob_end_flush();
  13. //这是ob_gzip压缩函数
  14. function ob_gzip ($content)
  15. {
  16. if( !headers_sent() && extension_loaded ("zlib") && strstr ( $_SERVER["HTTP_ACCEPT_ENCODING"], "gzip")){
  17. $content = gzencode($content,9);
  18. header ("Content- Encoding: gzip");
  19. header ("Vary: Accept- Encoding");
  20. header ("Content- Length: ".strlen ($content));
  21. }
  22. return ($content) ;
  23. }
复制代码

到底作用有 多大,在这里我就上面的代码进行了测试。

压缩前:

压缩后:

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP网络编程技巧总结》、《php缓存技术总结》、《PHP数据结构与算法教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php程序设计算法总结》、《PHP数学运算技巧总结》、《php正则表达式用法总结》、《PHP运算与运算符用法总结》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。



回复

使用道具 举报