PHP:抑制函数中的输出?

2021/01/18 07:21 · php ·  · 0评论

抑制函数可能产生的任何输出的最简单方法是什么?说我有这个:

function testFunc() {
    echo 'Testing';
    return true;
}

我想调用testFunc()并获取其返回值,而页面中不会显示“ Testing”。假设这是在其他代码的情况下输出其他的东西,是有这样的好方法?也许弄乱了输出缓冲区?

是的,弄乱输出缓冲区就是答案。只需在调用将要输出的方法之前打开它(不是函数本身,而是在调用它的位置,可以将其包装在整个脚本或脚本流中,但是可以通过使其尽可能“紧密”将其包装在方法的调用周围):

function foo() {
  echo "Flush!";
  return true;
}

ob_start();
$a = foo();
ob_end_clean();

并且不生成任何输出。

干得好:

ob_start();
testFunc();
ob_end_clean();

“ ob”代表“输出缓冲”,在这里查看手册页:http : //www.php.net/outcontrol

是的,您在利用PHP的输出缓冲功能(即ob_start和ob_end_clean)(使用php.net进行查找)方面处于正确的轨道:

<?php
  function testFunc() {
    echo 'Testing';
    return true;
  }

    ob_start();
    $output = testFunc();
    ob_end_clean();

    echo $output;
?>

难道不像对代码应用一些条件那样容易?

我的意思是,如果变量=测试然后输出,否?

对于结果直接输出到浏览器的函数(例如EVAL),您可以在ob_start中捕获结果。

本文地址:http://php.askforanswer.com/phpyizhihanshuzhongdeshuchu.html
文章标签: ,   ,  
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

文件下载

老薛主机终身7折优惠码boke112

上一篇:
下一篇:

评论已关闭!