您现在的位置: 万盛学电脑网 >> 程序编程 >> 网络编程 >> php编程 >> 正文

PHP实现gzip页面压缩方法

作者:佚名    责任编辑:admin    更新时间:2022-06-22

示例一(用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; 

?>