2011-12-25 68 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