PHP 函数,默认返回回显或返回值


PHP functiom, default return echo OR return value

我得到了这样的PHP函数:

function doingSomething($arg)
{
    ...
    echo($someString);
}

我不想复制/解析该函数并仅在我需要该函数返回值而不是回显它时才制作第二个函数。我如何修改它,以便它在需要时返回$someString?

使用另一个参数来告诉您的函数如何处理字符串:

function doingSomething($someString, $echo = false){
    if($echo){
      echo $someString;
    } 
    return $someString;
}

然后,如果要回显它:

doingSomething('String to echo', true);

或返回:

doingSomething('String to return');

您可以使用函数的第二个参数来执行此操作。

function doSomething($arg, $doOutput) {
    ...
    if ($doOutput) { echo $someString; }
    else { return $someString; }
}

如果 String 为 true,这将回显 $doOutput否则返回它。

为什么不根据需要使用或返回值,如下所示:

<?php
function doingSomething()
{
    return "Fluffeh";
}
$var=doingSomething();
echo $var."<br><br>";
echo "Or this way ".doingSomething();
?>

您可以两全其美,可以将输出保存到变量中,或者根据需要简单地将其回显到代码中吗?

输出:

Fluffeh
Or this way Fluffeh