首页 > 编程语言 >如何在PHP开启gzip页面压缩实例

如何在PHP开启gzip页面压缩实例

时间:2022-11-25 22:41:33浏览次数:46  
标签:Content zlib ob content header gzip PHP 页面


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

标签:Content,zlib,ob,content,header,gzip,PHP,页面
From: https://blog.51cto.com/u_15834343/5887909

相关文章

  • PHP:10个不常见却非常有用的PHP函数
    1.sys_getloadavg()sys_getloadavt()可以获得系统负载情况。该函数返回一个包含三个元素的数组,每个元素分别代表系统再过去的1、5和15分钟内的平均负载。与其让服务器因......
  • Visual Studio下的PHP开发工具VS.PHP初探
    做程序开发,离不开好的IDE。微软的VisualStudio一直是.NET平台程序员的必备工具,对于PHP程序员来说都是使用Editplus或PHPEditor等轻量级开发工具。对于编写小的PHP程序还......
  • ThinkPHP6.0在phpstorm添加查询构造器和模型的代码提示
    ThinkPHP6.0升级后使用查询构造器和模型都没有了提示原因是tp6源码中没有添加注释找到Model.php*@methodQuerywhere(mixed$field,string$op=null,mixed$con......
  • thinkphp6文件上传自定义命名规则
    think官方自带的命名规则有三种规则描述date根据日期和微秒数生成md5对文件使用md5_file散列生成sha1对文件使用sha1_file散列生成其中md5和sha1......
  • vuex页面刷新数据丢失问题的四种解决方式
    vuex是大家使用vue时大多数都会选择的,但是当页面刷新之后vuex数据会丢失,下面这篇文章主要给大家介绍了关于vuex页面刷新数据丢失问题的四种解决方式,需要的朋友可以参考......
  • php中如何实现SSO单点登录
    什么是单点登录SSO(SingleSign-On)SSO是一种统一认证和授权机制,指访问同一服务器不同应用中的受保护资源的同一用户,只需要登录一次,即通过一个应用中的安全验证后,再访问其他......
  • php8世界上最好的语言新版本特性
    本文只会讲述新特性的一些关键点,更详细的介绍请认真阅读官方文档。01UnionTypes(联合类型)说明一点,从PHP7开始,支持下面这样的语法: functionsum(int$a,int$b):int......
  • 试验解析抖音无水印视频【PHP版】
    试验了网上很多抖音解析无水印视频的API,发现很多都是不稳定的。连今天要分享的这个api也是,总是那么不稳定。不过还好,总算是解析出了无水印视频。很多东西还是要自己调试一下......
  • php中如何优雅的写复杂if-else
    提前return优化逻辑结构,让正常流程走主干,非正常流程提前return,去除不必要的else优化前$a=1;$b=2;$c=3;if($a==1){if($b==2){if($c==3){......
  • PHP7带来的重大变革
    PHP7带来的新东西1.类型的声明。可以使用字符串(string),整数(int),浮点数(float),以及布尔值(bool),来声明函数的参数类型与函数返回值。declare(strict_types=1);fun......