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

时间:2013-10-02 11:20:01

标签: php

我得到了这样的PHP函数:

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

我不想复制/启用该函数,只有当我需要该函数返回值而不是回显它时才创建第二个函数。我怎么能修改它,这样只要我需要它就会返回$ someString?

3 个答案:

答案 0 :(得分:3)

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

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

然后,如果你想回应它:

doingSomething('String to echo', true);

或者返回:

doingSomething('String to return');

答案 1 :(得分:1)

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

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

如果$ doOutput为true,则返回String,否则返回。

答案 2 :(得分:1)

为什么不像这样使用或返回值:

<?php
function doingSomething()
{
    return "Fluffeh";
}

$var=doingSomething();
echo $var."<br><br>";

echo "Or this way ".doingSomething();
?>

您可以充分利用这两个方面,可以将输出保存到变量中,还是根据需要在代码中回显它?

输出:

Fluffeh

Or this way Fluffeh