ob_end_clean - PHP输出内容前关闭其他输出的使用

ob_end_clean
Output Control 函数

  • 在写APP接口的时候,可能有时候会引用一些文件,被引用的文件中有时候会有输出,也就影响了我们原本的输出

  • 比如我们原本需要输出 $data,但是在引用的test.php中有一个echo 111;的输出忘记关闭,就会导致输出错误

echo '不要输出';
$out = '可以输出';
ob_end_clean();
echo '这是我要的<br>';
echo $out;
image.png

如果没有 ob_end_clean(); 这行,echo '不要输出';这个也会输出。

如果想要一些固定的输出,在输出之前添加ob_get_contents();函数即可,但要在自己的输出之前使用ob_end_clean();函数关闭以前的输出

echo '不要输出';
ob_end_clean();
echo '可以输出';
$out = ob_get_contents();
echo $out;

如果想要输出某些值,可以赋值一个变量

image.png

官网完整的demo是这样的,我觉得完整写法可能是需要顶部ob_start(); 尾部ob_end_clean();

<?php
ob_start();
echo "Hello ";
$out1 = ob_get_contents();
echo "World";
$out2 = ob_get_contents();
ob_end_clean();
var_dump($out1, $out2);
?>

这种方式也可以直接作为ajax的请求输出

如果你需要做日志记录得话,其实也可以使用 ob_get_contents(); 函数处理

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • .bat脚本基本命令语法 目录 批处理的常见命令(未列举的命令还比较多,请查阅帮助信息) 1、REM 和 :: 2...
    庆庆庆庆庆阅读 12,557评论 1 19
  • Output Control The Output Control functions allow you to ...
    郑需要阅读 4,278评论 0 2
  • 1、判断一个变量是否存在的函数:isset判断一个变量是否为null的函数:is_null判断一个变量是否为空的函...
    jianghu000阅读 5,672评论 1 4
  • 个人学习批处理的初衷来源于实际工作;在某个迭代版本有个BS(安卓手游模拟器)大需求,从而在测试过程中就重复涉及到...
    Luckykailiu阅读 10,219评论 0 11
  • 生命亦是一场旅行,在旅途中我们会遇见形形色色的人,有些人缘深,成为父子,成为夫妻,有些缘浅,只匆匆一面,之...
    如水2016阅读 1,560评论 0 0