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

yipeiwu_com4年前PHP代码库

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

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

相关文章

PHP 一个随机字符串生成代码

复制代码 代码如下: /************* *@l - length of random string */ function generate_rand($l){ $c= "A...

PHP面向对象程序设计类的定义与用法简单示例

本文实例讲述了PHP面向对象程序设计类的定义与用法。分享给大家供大家参考,具体如下: <?php class Person { private $name; p...

Linux下源码包安装Swoole及基本使用操作图文详解

Linux下源码包安装Swoole及基本使用操作图文详解

本文实例讲述了Linux下源码包安装Swoole及基本使用操作。分享给大家供大家参考,具体如下: 下载Swoole PECL扩展源码包:http://pecl.php.net/pack...

PHP简单实现合并2个数字键数组值的方法

本文实例讲述了PHP简单实现合并2个数字键数组值的方法。分享给大家供大家参考,具体如下: 先要了解一个基础知识点:PHP合并数组+与array_merge的区别分析 <?...

PHP使用CURL实现下载文件功能示例

本文实例讲述了PHP使用CURL实现下载文件功能。分享给大家供大家参考,具体如下: 如果使用CURL下载从微信手机端上传的图片?参考下面代码 /** * CURL下载文件 成功返回...