萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> PHP實現gzip頁面壓縮方法

PHP實現gzip頁面壓縮方法

示例一(用php的內置壓縮函數):

<?PHP 
if(Extension_Loaded(’zlib’)) Ob_Start(’ob_gzhandler’); 
Header("Content-type: text/html"); 
?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>無標題文檔</title> 
</head> 
<body> 
<?php 
for($i=0;$i<10000;$i++){ 
echo ’Hello World!’; 

?> 
</body> 
</html> 
<?PHP 
if(Extension_Loaded(’zlib’)) Ob_End_Flush(); 
?> 


示例二(自寫函數):

<?php ob_start(’ob_gzip’); ?> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>無標題文檔</title> 
</head> 

<body> 
</body> 
</html> 

<?php 
ob_end_flush(); 
//壓縮函數 
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; 

?> 
 

copyright © 萬盛學電腦網 all rights reserved