zoukankan      html  css  js  c++  java
  • PHP之输出控制 ob_start(),ob_get_contents(),ob_end_clean()

    1.常用函数

      ob_start();#打开输出缓冲区

      ob_get_contents();#获取缓冲区内容

      ob_get_length();#获取缓冲区内容长度

      ob_clean();#清除之前的所有输出内容

      ob_end_clean();#清除缓冲区内容并且关闭缓冲区,和ob_clean()差不多吧,不太了解真正的区别,但是有人建议使用这个函数

      ob_flush();#冲刷出缓冲区内容,必须在此函数之前使用ob_get_contents()

      ob_get_clean();#实质上是ob_get_contents()和ob_end_clean()一起使用

    2.通常ob_start(),ob_get_contents(),ob_end_clean()一起使用

    <?php
    echo 'This is A';
    
    ob_end_clean();
    
    ob_start();
    
    echo 'This is B';
    
    $str = ob_get_contents();
    $len = ob_get_length();
    
    ob_end_clean();
    
    echo $str.PHP_EOL;
    echo 'The length of buffer is '.$len.PHP_EOL;

    3.使用ob_end_clean()时最好判断有没有缓存内容,否则会下面的错误

    1 <?php
    2 error_reporting(E_ALL);
    3 
    4 ob_end_clean();
    5 
    6 ob_end_clean();
    Notice: ob_end_clean(): failed to delete buffer. No buffer to delete in /Users/zongshuai/bhu/ceshi/ceshi.php on line 6

    解决办法 在ob_end_clean()前面先判断一下,例如 if(ob_get_length()) ob_end_clean(); 或者 if(ob_get_contents()) ob_end_clean();

  • 相关阅读:
    Brackets_区间DP
    石子合并_区间Dp
    You Are the One_区间DP
    Palindrome subsequence_区间DP
    Infix to postfix 用stack模板,表达式没有括号
    Java 4
    Java 3
    规范化的递归转换成非递归
    recursion 递归以及递归的缺点
    Infix to postfix conversion 中缀表达式转换为后缀表达式
  • 原文地址:https://www.cnblogs.com/xiaozong/p/5736038.html
Copyright © 2011-2022 走看看