2011-12-25 127 views
3

我一直在寻找PHP GZ-压缩,我发现这段代码:关于PHP和GZ-压缩

<?php 
function print_gzipped_output() 
{ 
    $HTTP_ACCEPT_ENCODING = $_SERVER["HTTP_ACCEPT_ENCODING"]; 
    if(headers_sent()) 
     $encoding = false; 
    else if(strpos($HTTP_ACCEPT_ENCODING, 'x-gzip') !== false) 
     $encoding = 'x-gzip'; 
    else if(strpos($HTTP_ACCEPT_ENCODING,'gzip') !== false) 
     $encoding = 'gzip'; 
    else 
     $encoding = false; 

    if($encoding) { 
     $contents = ob_get_clean(); 
     $_temp1 = strlen($contents); 
     if ($_temp1 < 2048) // no need to waste resources in compressing very little data 
      print($contents); 
     else 
     { 
      header('Content-Encoding: '.$encoding); 
      print("\x1f\x8b\x08\x00\x00\x00\x00\x00"); 
      $contents = gzcompress($contents, 9); 
      $contents = substr($contents, 0, $_temp1); 
      print($contents); 
     } 
    } 
    else 
     ob_end_flush(); 
} 
?> 

我的问题很简单:什么是线

print("\x1f\x8b\x08\x00\x00\x00\x00\x00"); 

实际手段?

预先感谢您

+0

只是一个侧面说明压缩真的更好地处理您的Web服务器。 –

回答

3

这是gzip格式文件的标头。您可以查看更多详情here

前两个字节标识文件为gzip。以下8指定使用DEFLATE压缩方法。最后的四个零字节用于不需要的字段。

+0

非常感谢! – mneri