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


Posted in PHP onFebruary 18, 2017

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

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

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

PHP代码

//启用压缩
if(function_exists('ob_gzip'))
{
 ob_start('ob_gzip');
}
//准备一些待压缩的内容
for($i=0; $i<100; $i++)
{
 echo('这里是测试内容 <br>');
}
//输出压缩成果
ob_end_flush();
//这是ob_gzip压缩函数
function ob_gzip ($content)
{
 if( !headers_sent() && extension_loaded ("zlib") && strstr ( $_SERVER["HTTP_ACCEPT_ENCODING"], "gzip")){
 $content = gzencode($content,9);
 header ("Content- Encoding: gzip");
 header ("Vary: Accept- Encoding");
 header ("Content- Length: ".strlen ($content));
 }
 return ($content) ;
}

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

压缩前:

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

压缩后:

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

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

PHP 相关文章推荐
dedecms模版制作使用方法
Apr 03 PHP
Windows Apache2.2.11及Php5.2.9-1的安装与配置方法
Jun 08 PHP
基于php无限分类的深入理解
Jun 02 PHP
PHP中一些可以替代正则表达式函数的字符串操作函数
Nov 17 PHP
隐性调用php程序的方法
Jun 13 PHP
详解Window7 下开发php扩展
Dec 31 PHP
PHP页面输出时js设置input框的选中值
Sep 30 PHP
PHP单例模式详解及实例代码
Dec 21 PHP
PHP编程实现阳历转换为阴历的方法实例
Aug 08 PHP
tp5(thinkPHP5)操作mongoDB数据库的方法
Jan 20 PHP
ThinkPHP5+UEditor图片上传到阿里云对象存储OSS功能示例
Aug 05 PHP
phpstudy2020搭建站点的实现示例
Oct 30 PHP
PHP开发APP端微信支付功能
Feb 17 #PHP
php+webSoket实现聊天室示例代码(附源码)
Feb 17 #PHP
PHP中检索字符串的方法分析【strstr与substr_count方法】
Feb 17 #PHP
PHP常用的三种设计模式
Feb 17 #PHP
轻松实现php文件上传功能
Feb 17 #PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
Feb 17 #PHP
php过滤输入操作之htmlentities与htmlspecialchars用法分析
Feb 17 #PHP
You might like
php str_replace的替换漏洞
2008/03/15 PHP
PHP中常用的输出函数总结
2014/09/22 PHP
ThinkPHP框架设计及扩展详解
2014/11/25 PHP
php实现插入数组但不影响原有顺序的方法
2015/03/27 PHP
Redis在Laravel项目中的应用实例详解
2017/08/11 PHP
总结PHP内存释放以及垃圾回收
2018/03/29 PHP
javascript Array对象基础知识小结
2010/11/16 Javascript
基于jQuery+HttpHandler实现图片裁剪效果代码(适用于论坛, SNS)
2011/09/02 Javascript
form.submit()不能提交表单的原因分析
2014/10/23 Javascript
JS实现兼容性好,带缓冲的动感网页右键菜单效果
2015/09/18 Javascript
JavaScript Length 属性的总结
2015/11/02 Javascript
基于JavaScript实现跳转提示页面
2016/09/24 Javascript
JS打开摄像头并截图上传示例
2017/02/18 Javascript
基于vue2框架的机器人自动回复mini-project实例代码
2017/06/13 Javascript
js实现加载页面就自动触发超链接的示例
2017/08/31 Javascript
9种改善AngularJS性能的方法
2017/11/28 Javascript
fullpage.js最后一屏滚动方式
2018/02/06 Javascript
30分钟快速入门掌握ES6/ES2015的核心内容(上)
2018/04/18 Javascript
纯js封装的ajax功能函数与用法示例
2018/05/14 Javascript
详解vuex的简单todolist例子
2019/07/14 Javascript
layer提示框添加多个按钮选择的实例
2019/09/12 Javascript
layui-table获得当前行的上/下一行数据的例子
2019/09/24 Javascript
BootStrap前端框架使用方法详解
2020/02/26 Javascript
Python入门篇之编程习惯与特点
2014/10/17 Python
通过mod_python配置运行在Apache上的Django框架
2015/07/22 Python
Python实现将元组中的元素作为参数传入函数的操作
2020/06/05 Python
用python制作个音乐下载器
2021/01/30 Python
俄罗斯小米家用电器、电子产品和智能家居商店:Poood.ru
2020/04/03 全球购物
广告词串烧
2014/03/19 职场文书
2014年六一儿童节演讲稿
2014/05/23 职场文书
119消防日活动总结
2014/08/29 职场文书
2014年班务工作总结
2014/12/02 职场文书
2015年幼儿园学前班工作总结
2015/05/18 职场文书
2016年优秀党务工作者先进事迹材料
2016/02/29 职场文书
python析构函数用法及注意事项
2021/06/22 Python
详解Go语言中配置文件使用与日志配置
2022/06/01 Golang