学习网考试学习资料

Gzu521.com

用PHP控制您的浏览器cache(3)

PHP教程   点击:次   发布时间:2006-7-6   【字体: 】   来源:Gzu521.com
GZU521.COM学习网
** |<?
** | gzdocout();
** |? >
** -------------end of file-----------
*/
ob_start();
ob_implicit_flush(0);
function checkcangzip(){
global $http_accept_encoding;
if (headers_sent() || connection_timeout() || connection_aborted()){
return 0;
}
if (strpos($http_accept_encoding, 'x-gzip') !== false) return "x-gzip";
if (strpos($http_accept_encoding,'gzip') !== false) return "gzip";
return 0;
}
/* $level = compression level 0-9, 0=none, 9=max */
function gzdocout($level=1,$debug=0){
$encoding = checkcangzip();
if ($encoding){
print "n<!-- use compress $encoding -->n";
$contents = ob_get_contents();
ob_end_clean();
if ($debug){
$s = "<p>not compress length: ".strlen($contents);
$s .= "
compressed length: ".strlen(gzcompress($contents,$level));
$contents .= $s;
}
header("content-encoding: $encoding");
print "x1fx8bx08x00x00x00x00x00";
$size = strlen($contents);
$crc = crc32($contents);
$contents = gzcompress($contents,$level);
$contents = substr($contents, 0, strlen($contents) - 4);
print $contents;
print pack('v',$crc);
print pack('v',$size);
exit;
}else{
ob_end_flush();
exit;
}
}
?>

这是catoc的一段很早以前的代码,是在weblogs.com看到的,他利用了zlib的函数,对传输的内容进行了压缩,测试表明,对于10k以上的页面,会产生效果,而且页面越大,效果越明显……

上一页
本文共3页: 第 [1] [2] 3

责任编辑:gzu521

网络编程分类
ASP教程
.Net教程
Java教程
PHP教程
数据库基础
ACCESS教程
SQL Server教程
MySQL教程
Oracle教程
分类推荐信息
更多...
大类最新文章
更多...