• Php


    1.ob缓存运行方式

    控制您的浏览器cache

    Output Control 函数可以让你自由控制脚本中数据的输出。它非常地有用,特别是对于:当你想在数据已经输出后,再输出文件头的情况。输出控制函数不对使用 header() 或 setcookie(), 发送的文件头信息产生影响,只对那些类似于 echo() 和 PHP 代码的数据块有作用。

    2.注意:在程序中如果开启ob_

    start(),所有的echo输出都会保存到ob缓存中,可以使用ob系列函数进行操作,如果没有,默认情况下,在程序执行结束,会把缓存中的数据发送给浏览器,如果,你使用ob_clean()类似的函数,会情况缓存中的内容,那么就不用有数据发送给浏览器

    • ob_start() 开启

    • ob_get_contents() 获取缓存中的数据

    • ob_clean() 清空缓存中的数据

    • ob_end() 关闭ob缓存

    • ob_end_clean() 清空缓存并关闭ob缓存

    • ob_flush() 刷新缓冲区【就是把ob缓存中的内容放到程序缓存中,缓存中内容就是空了,默认是在程序执行完后再放到程序缓存中,用此函数可以在程序执行时任意时候放到程序缓存中】

    flush() 把程序缓存内容推送到浏览器【一些版本的 Microsoft Internet Explorer 只有当接受到的256个字节以后才开始显示该页面,所以必须发送一些额外的空格来让这些浏览器显示页面内容。】

    3.说的简单点:

    默认情况下,php会把输出的内容放到【程序缓存】中,待程序跑完,把【程序缓存】中的东西全部抛到浏览器中;现在使用ob缓存,开启后,所有的输出都会放到【ob缓存】中,头信息(header)等这些依旧存放到【程序缓存】中,待程序跑完,【ob缓存】中的内容会被放到【程序缓存】内容后面,再送到浏览器。ob_flush()是把【ob缓存】中的内容放到【程序缓存】中,之前只有待程序跑完才会把【ob缓存】内容放到【程序缓存】中,现在用ob_flush()就可以在任意时候送到【程序缓存】中;flush()函数的作用是把【程序缓存】中的数据抛到浏览器中;
    总结:ob_flush()把ob缓存中的内容放到程序缓存
    flush()是把程序缓存中的内容送到浏览器缓存中

  • 相关阅读:
    C#基本数据类型
    ASP.NET MVC 实现二级域名
    asp.net下通过泛解析和伪静态实现二级域名的实现方法
    Web Forms vs Web MVC
    WebForm页面生命周期及asp.net运行机制
    波函数坍缩
    whoami
    wstngfw中使用虚拟IP映射内网IP
    Thread-specific data(TSD)线程私有数据
    Libev库学习
  • 原文地址:https://www.cnblogs.com/pzblog/p/9088160.html
Copyright © 2020-2023  润新知