<?







function compress_output_gzip($output){return gzencode($output,9);}



function compress_output_deflate($output){return gzdeflate($output, 9);}



// сжатие по умолчанию



$Content_Encoding['deflate']=false;



$Content_Encoding['gzip']=false;



// включение сжатия, если поддерживается браузером



if (isset($_SERVER['HTTP_ACCEPT_ENCODING']) && preg_match('#deflate#i',$_SERVER['HTTP_ACCEPT_ENCODING']))



$Content_Encoding['deflate']=true;



if (isset($_SERVER['HTTP_ACCEPT_ENCODING']) && preg_match('#gzip#i',$_SERVER['HTTP_ACCEPT_ENCODING']))



$Content_Encoding['gzip']=true;



// Непосредственное включение сжатия



if ($Content_Encoding['deflate'])



{



header("Content-Encoding: deflate");



ob_start("compress_output_deflate");



}



elseif($Content_Encoding['gzip'])



{



header("Content-Encoding: gzip");



ob_start("compress_output_gzip");



}



else



ob_start(); // если нет сжатия, то просто буферизация данных







$compress=true;



?>