文档章节

缓存原理--静态化

PHer
 PHer
发布于 2014/06/17 11:16
字数 378
阅读 159
收藏 2

缓存的分类:

            ①程序缓存

            ②ob缓存

            ③浏览器缓存

如:

<?php
//ob_start();如果PHPini文件中开启了缓冲开关控制
echo str_repeat("&nbsp;",4096),'<br/>';
for ($i=0; $i < 10; $i++) { 
    //开启缓冲开关控制,也可以通过Phpini文件中设置
    echo $i.'<br/>';
    ob_flush();//直接输出缓冲内容,这个内容会发送到浏览器,浏览器也自带有缓冲控制功能
    flush();//设置浏览器不缓存
    sleep(1);

}

如果ini文件中如果设置了开启了缓冲开关,在php文件中ob_start()会关闭缓冲开关

捕捉PHP缓冲内容:

        ob_get_contents(): 获得缓冲区的内容.

$str = <<<HTML
    <h3>这是我在staticpage中获得的缓冲区数据</h3>

HTML;
echo $str;
$imessage=ob_get_contents();
file_put_contents("3.txt",$imessage);


        ob_clean();清空PHP源头的缓冲区内容.
        ob_get_clean();获得PHP缓冲区内容.并且清空缓冲区  

<?php
$str = <<<HTML
    <h3>这是我在staticpage中获得的缓冲区数据</h3>

HTML;
echo $str;
$imessage=ob_get_clean();
file_put_contents("3.txt",$imessage);

  总结:

        ob_start();开启缓冲。

        ob_flush();将PHP缓冲区内容发到Apache,再到浏览器。

        flush; 将浏览器里边的缓冲数据输出。

        ob_clean(); 将缓冲区的内容清除掉。

        ob_get_clean();将缓冲区的内容获得,之后清除掉缓冲区数据信息。

        ob_get_contents();获得PHP缓冲区内容。

        ob_end_flush():刷新缓冲区内容到程序缓存,并且清楚缓冲区内容,关闭ob

        flush:该函数将当前为止程序的所有输出发送到用户的浏览器。

       





© 著作权归作者所有

共有 人打赏支持
PHer
粉丝 4
博文 121
码字总数 38443
作品 0
成都
程序员
秋色园QBlog技术原理解析:性能优化篇:缓存总有失效时,持续的缓存方案(十四)

文章回顾: 1: 秋色园QBlog技术原理解析:开篇:整体认识(一) --介绍整体文件夹和文件的作用 2: 秋色园QBlog技术原理解析:认识整站处理流程(二) --介绍秋色园业务处理流程 3: 秋色园QBl...

晨曦之光
2012/03/09
0
0
php网站静态化

一、静态化 实现静态化的两种方法: 1.利用ob缓存技术进行静态化 2.利用模板替换技术实现静态化 二.伪静态 优点:1.速度快 2.利于seo 3.安全性高 缺点:占磁盘空间,如果过大,对磁盘响应速度...

yang名扬
2014/07/15
0
0
小蚂蚁学习页面静态化(1)——静态化的原理

关于页面php文件执行阶段 语法分析——》编译——》运行 如何优化页面的响应时间 动态页面静态化 优化数据库 使用负载均衡 使用缓存 页面静态化能够解决的问题 1.减少服务器脚本的计算时间 ...

嗜学如命的小蚂蚁
2015/10/09
242
2
php页面静态化

实现静态化的原理 原理:把输出缓冲区的内容,写入到指定文件中中。 用到Php内置的文件操作函数(fileputcontents()) 使用Php缓冲区机制(obstart, obgetcontents, obclean, obgetclean) 触发...

金于虎
2016/12/19
2
0
秋色园QBlog技术原理解析:性能优化篇:用户和文章计数器方案(十七)

上节概要: 上节 秋色园QBlog技术原理解析:性能优化篇:access的并发极限及分库分散并发方案(十六) 中, 介绍了 Access的并发上限,及从某种程度上 秋色园QBlog 针对并发上限进行了多个数据...

晨曦之光
2012/03/09
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Sqoop 操作实例补充

导入指定字段和指定条件的行记录 # 指定导入的字段--columns <col,col,col…># 指定过滤条件--where <where clause># 设置切分的工作单元--split-by <column-name># 目标目录存在...

PeakFang-BOK
9分钟前
1
0
App store 侵权投诉

App Store Content Dispute 侵权投诉 https://www.apple.com/legal/internet-services/itunes/appstorenotices/#?lang=zh...

壹峰
12分钟前
0
0
教程:如何在window上安装Apache HTTP Server

Apache官网只提供 Apache HTTP Server 的源代码,不提供编译好的二进制文件。 不过我们还是可以从网络上找到其他人编译好的Apache HTTP Server。 首先,从 https://www.apachehaus.com/cgi-b...

Doxde
28分钟前
0
0
中国移动蔡谦:5G传输准备就绪

目前5G已成业界热议话题,在即将到来的万物互联时代,5G是非常关键的技术。且5G相比4G,业务场景多种多样,对5G承载网带来巨大挑战。5G传输,承载先行并不仅仅是一个口号。当前5G承载网的部署...

linux-tao
37分钟前
4
0
维护“修理权”,苹果使用专有软件工具来修复MacBook Pro和iMac Pro

根据上月发给苹果授权服务提供商的一份文件,苹果公司正在使用新的专有软件诊断工具来修复MacBook Pros和iMac Pros,如果不用专有软件工具来修复关键部件,将会导致“系统失效和修复不完整”...

linuxCool
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部