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 相关文章推荐
繁体中文转换为简体中文的PHP函数
Oct 09 PHP
php mysql索引问题
Jun 07 PHP
收藏的PHP常用函数 推荐收藏保存
Feb 21 PHP
使用PHP实现二分查找算法代码分享
Jun 24 PHP
PHP扩展模块Pecl、Pear以及Perl的区别
Apr 09 PHP
微信公众平台之快递查询功能用法实例
Apr 14 PHP
PHP使用CURL模拟登录的方法
Jul 08 PHP
PHP使用反射机制实现查找类和方法的所在位置
Apr 22 PHP
PHP实现的统计数据功能详解
Dec 06 PHP
PHP preg_match实现正则表达式匹配功能【输出是否匹配及匹配值】
Jul 19 PHP
Laravel接收前端ajax传来的数据的实例代码
Jul 20 PHP
php中各种定义变量的方法小结
Oct 18 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
SONY ICF-F10中波修复记
2021/03/02 无线电
让PHP支持页面回退的两种方法[转]
2007/02/14 PHP
php 中文字符入库或显示乱码问题的解决方法
2010/04/12 PHP
浅析php创建者模式
2014/11/25 PHP
php生成随机颜色方法汇总
2014/12/03 PHP
PHP对称加密函数实现数据的加密解密
2016/10/27 PHP
thinkPHP事务操作简单案例分析
2019/10/17 PHP
PHP实现常用排序算法的方法
2020/02/05 PHP
11款新鲜的jQuery插件[附所有demo下载]
2011/01/24 Javascript
javascript随机将第一个dom中的图片添加到第二个div中示例
2013/10/08 Javascript
jquery插件开发之实现google+圈子选择功能
2014/03/10 Javascript
JQuery获取表格数据示例代码
2014/05/26 Javascript
jQuery实现简单的日期输入格式化控件
2015/03/12 Javascript
JavaScript深度复制(deep clone)的实现方法
2016/02/19 Javascript
原生JS和jQuery版实现文件上传功能
2016/04/18 Javascript
Vue.js 递归组件实现树形菜单(实例分享)
2016/12/21 Javascript
JavaScript 函数节流详解及方法总结
2017/02/09 Javascript
微信小程序 本地数据读取实例
2017/04/27 Javascript
67 个节约开发时间的前端开发者的工具、库和资源
2017/09/12 Javascript
Vue响应式原理深入解析及注意事项
2017/12/11 Javascript
Vue开发之watch监听数组、对象、变量操作分析
2019/04/25 Javascript
JS实现多功能计算器
2020/10/28 Javascript
JavaScript 实现拖拽效果组件功能(兼容移动端)
2020/11/11 Javascript
[40:17]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第一场
2018/04/06 DOTA
python抓取并保存html页面时乱码问题的解决方法
2016/07/01 Python
python 专题九 Mysql数据库编程基础知识
2017/03/16 Python
python爬取w3shcool的JQuery课程并且保存到本地
2017/04/06 Python
Python get获取页面cookie代码实例
2018/09/12 Python
在python中利用KNN实现对iris进行分类的方法
2018/12/11 Python
详解BeautifulSoup获取特定标签下内容的方法
2020/12/07 Python
米兰网婚纱礼服法国网上商店:Milanoo法国
2016/08/20 全球购物
加拿大高尔夫超市:Golf Town
2018/01/12 全球购物
Revolution Beauty美国官网:英国知名化妆品网站
2018/07/23 全球购物
Myprotein俄罗斯官网:欧洲第一运动营养品牌
2019/05/05 全球购物
一份教室追逐打闹的检讨书
2014/09/27 职场文书
运动会宣传稿50字
2015/07/23 职场文书