【问题标题】:How to assign the echo statement from a function call to a variable?如何将函数调用中的 echo 语句分配给变量?
【发布时间】:2015-08-14 05:12:04
【问题描述】:

我正在尝试获取函数的回声并将值添加到变量中。

这就是我所做的。

function myfunction() {
   echo 'myvar';
}

然后我想把它变成这样的变量:

$myVariable = myfunction();

我认为这会工作,但我不工作。

这不是这样做的方法吗?如果没有,我该怎么做?

【问题讨论】:

    标签: php function variable-assignment output-buffering


    【解决方案1】:

    您可以在打开output buffering 时调用该函数,然后您可以捕获输出。例如

    <?php
    
        ob_start();
        myfunction();
        $variable = ob_get_contents();
        ob_end_clean();
    
        echo $variable;
    
    ?>
    

    输出:

    myvar
    

    或者您只需将echo 语句更改为return 语句。


    您当前的版本不起作用,因为您没有从函数中返回值。并且由于您省略了 return 语句,因此返回值 NULL 并分配给您的变量。你可以这样做:

    $variable = myfunction();
    var_dump($variable);
    

    输出:

    NULL
    

    【讨论】:

      猜你喜欢
      • 2018-04-02
      • 1970-01-01
      • 2019-09-06
      • 2015-05-19
      • 2021-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多