`
willeager
  • 浏览: 95216 次
  • 性别: Icon_minigender_1
  • 来自: 福建
社区版块
存档分类
最新评论

PHP中的缓存级别与ob_end_clean等函数的使用

    博客分类:
  • PHP
阅读更多
自己总结的,表达或许有问题,以后慢慢修正。

当前级别 == 最高级别
PHP.ini 中output_buffering = Off 默认缓存级别为0
PHP.ini 中output_buffering = On 默认缓存级别为1
使用一次ob_start  (当前级别0)级别+1(则现在的级别为1,则会将之后的内容保存在级别1的缓存中)
使用一次ob_end_clean (当前级别1)级别-1,并且将级别1中的内容清空
使用一次ob_end_flush (当前级别1)级别-1,并且将级别1中的内容输出(也就是将内容存到低一级别中)(如果这个时候再使用ob_end_clean内容也会被清空而没有输出到浏览器)
ob_get_flush与ob_end_flush一样,不过还会将flush中内容返回
ob_get_contents()得到当前级别缓存中的内容,级别不变

ob_get_clean() 相当于 ob_get_contents(),ob_end_clean()
分享到:
评论

相关推荐

    php中flush()、ob_flush()、ob_end_flush()的区别介绍

    在实际开发中,结合使用 `ob_start()`, `ob_clean()`, `ob_get_contents()` 等相关函数,可以灵活地控制和管理PHP的输出缓冲,实现诸如分块传输、HTML压缩、内容替换等多种优化策略。了解这些函数的差异和使用场景,...

    用PHP的ob_start();控制您的浏览器cache!

    必须使用`ob_end_flush()`或`flush()`等函数显式输出缓冲区内容。 3. **ob_get_contents** - **函数格式**:`ob_get_contents();` - **说明**:获取当前输出缓冲区的内容。如果输出缓冲未开启,则返回`FALSE`。 ...

    php页面缓存方法小结_.docx

    最后,`ob_end_flush()`会结束页面缓存并把内容输出到浏览器,`ob_end_clean()`则是结束并丢弃缓存内容。 在缓存策略中,`page_init()`函数用于初始化页面缓存,包括设置缓存路径、文件命名规则等。这个例子中,...

    php页面缓存方法小结

    在这个函数之后,直到ob_end_flush()或ob_end_clean()被调用之前,所有输出都会被暂存到一个内部的缓冲区中,而不会直接发送到浏览器。 2. ob_get_contents():此函数允许获取当前输出缓冲区内的内容。这在输出缓冲...

    php缓存实现原理

    PHP缓存实现原理主要涉及到的是PHP的输出控制(Output Control)机制,这是一组用于管理脚本输出的函数,能够让我们在数据实际被输出到浏览器之前对其进行处理。这些功能对于优化网页性能,尤其是在动态网站中生成...

    php中 ob_start等函数截取标准输出的方法

    我想将PHP脚本中输出的东西收集在一起,于是使用了ob_start和ob_end_flush这两个函数,确实有达到收集输出内容的作用,但同时也将这些打印到了控制台界面中。我想问的是有没有办法,阻止PHP像控制台输出信息。该软件...

    php缓存生成html类

    ob_end_clean(); // 清空并关闭缓冲区 // 生成静态HTML文件 $this->saveToFile($fileName, $content); // 如果缓存文件存在并且未过期,则直接读取缓存文件内容 if ($cachedContent = $this->loadFromFile($...

    解析PHP中ob_start()函数的用法

    以上场景只是`ob_start()`功能的一部分,实际上,配合其他`ob_`系列函数(如`ob_get_contents()`、`ob_end_clean()`、`ob_end_flush()`等),还可以实现更多高级功能,例如处理输出过滤、控制浏览器缓存、生成压缩后...

    PHP中ob_start函数的使用说明

    在实际开发中,`ob_start()` 与其他输出控制函数组合使用,可以帮助解决很多问题,比如在生成动态内容时防止意外的输出污染文件头,或者实现分页加载、页面局部刷新等复杂功能。正确理解并运用这些函数,能够提升PHP...

    PHP实现即时输出、实时输出内容方法

    #清除并关闭缓冲,输出到浏览器之前使用这个函数。 ob_end_clean(); #控制隐式缓冲泻出,默认off,打开时,对每个 print/echo 或者输出命令的结果都发送到浏览器。 ob_implicit_flush(1); 例, 复制代码 代码如下: ...

    控制PHP的输出:缓存并压缩动态页面

    这可以通过PHP的输出缓冲控制函数实现,其中包括ob_start()、ob_get_contents()、ob_get_length()、ob_end_clean()和ob_implicit_flush()等。ob_start()函数用于开启输出缓冲,使得所有发送到浏览器的输出都会首先...

    php输出掌握的学习笔记__1.docx

    PHP 输出掌握的学习笔记主要涉及如何使用PHP的输出控制函数,如`ob_start()`,`ob_get_contents()`,`ob_end_clean()`等,以管理和处理脚本的输出内容。这些函数在处理HTTP头信息、错误处理、内容缓存等方面非常有用...

    php输出掌握的学习笔记_.docx

    `ob_end_clean()` 函数用于清除输出缓冲区,并释放其占用的内存。这意味着缓冲区中的内容将不会被输出到客户端。 **示例代码**: ```php <?php ob_start(); echo 'Hello World!'; ob_end_clean(); // 清除缓冲区...

    PHP逐行输出(ob_flush与flush的组合)

    同时,合理运用`ob_start()`、`ob_end_flush()`等其他`ob_*`函数,可以更灵活地控制输出缓冲区,实现更多复杂的需求。 总之,`ob_flush()`和`flush()`是PHP实现动态输出和实时更新页面的重要工具,理解它们的工作...

    php利用ob_start()清除输出和选择性输出的方法

    如果希望静默地丢弃缓冲区中的内容,并关闭缓冲区,可以使用 `ob_end_clean()` 函数。使用 `ob_end_clean()` 可以彻底清除缓冲区内容,这样后续的输出将不再受之前缓冲内容的影响。 输出缓冲区的测试使用方法非常...

    PHP输出缓存ob系列函数详解

    因此,只有正确使用,输出缓存ob系列函数才能真正对性能提升有所帮助。对于GZIP压缩,可以通过ob_start(ob_gzhandler)轻松实现页面的GZIP压缩,前提是服务器支持zlib,并且浏览器支持GZIP。如果担心浏览器支持问题,...

    用php的ob_start来生成静态页面的方法分析

    在开始之前还是提一下三个函数吧:”ob_start()、ob_end_clean()、ob_get_contents()” ob_start():是打开缓冲区的,就是要把您需要生成的静态文件的内容缓存在这里; ob_get_contents():是读出缓冲区里的内容,下面...

    PHP ob缓存以及ob函数原理实例解析

    只有当遇到特定的OB函数(如`ob_end_flush()`)或者脚本执行结束时,缓冲区中的内容才会被发送到浏览器。这在处理大量输出或者需要对输出内容进行操作时尤其有用。 OB缓存的主要作用包括: 1. 防止在已经向浏览器...

    php使用ob_start()实现图片存入变量的方法

    总结起来,`ob_start()`函数在PHP中主要用于控制输出流,结合GD库可以实现将处理后的图片数据存储到变量,这在某些特定应用场景中非常有用,例如图片数据的数据库存储、图片编码转换等。但务必注意资源管理,避免...

Global site tag (gtag.js) - Google Analytics