Php 函数返回后调用函数

Php 函数返回后调用函数,php,Php,我有以下情况: 我有一个函数“foo”,希望foo返回函数条应该被调用。这里有一个小例子,我的意思是: function foo() { echo "FOO"; return "1"; } function bar() { echo "BAR"; } echo foo(); 输出应该是这样显示的 FOO 1 酒吧 所有这些都在PHP中!!! 有人知道如何在每次foo()之后不调用bar()就可以实现这一点吗?您只需要像这样返回函数调用: function foo()

我有以下情况: 我有一个函数“foo”,希望foo返回函数条应该被调用。这里有一个小例子,我的意思是:

function foo() {
     echo "FOO";
     return "1";
}
function bar() {
    echo "BAR";
}
echo foo();
输出应该是这样显示的

FOO
1
酒吧

所有这些都在PHP中!!!
有人知道如何在每次
foo()
之后不调用
bar()
就可以实现这一点吗?

您只需要像这样返回函数调用:

function foo() {
    echo "FOO";
    return bar();
}

您只需返回函数调用,如下所示:

function foo() {
    echo "FOO";
    return bar();
}

或者,如果您有两个函数,只需添加
foo()
,如下所示:

function bar(){
foo();
echo "BAR";
}
并从
foo()
函数中删除return语句。或写入
返回0

更新:


您可以将返回函数保留在
foo()

中,或者如果您有两个函数,只需添加
foo()
,如下所示:

function bar(){
foo();
echo "BAR";
}
并从
foo()
函数中删除return语句。或写入
返回0

更新:


您可以将return函数保留在
foo()

中,这样就不可能实现您想要的功能。您实际要求的是,在您离开函数并调用echo之后,自动执行一条语句

使用
finally
可以在
返回后调用语句,但是存储调用其他内容的结果并稍后返回会更容易(更干净)

function b() {
    echo "bar";
    return 2;
}

function a() {
    try {
        echo "foo";
        return b();
    }
    finally {
        echo "finally";
    }
}

echo a();
要得到结果,您真正应该做的是在调用
foo
之后调用
bar

echo foo();
bar();

你想要的不是那样的。您实际要求的是,在您离开函数并调用echo之后,自动执行一条语句

使用
finally
可以在
返回后调用语句,但是存储调用其他内容的结果并稍后返回会更容易(更干净)

function b() {
    echo "bar";
    return 2;
}

function a() {
    try {
        echo "foo";
        return b();
    }
    finally {
        echo "finally";
    }
}

echo a();
要得到结果,您真正应该做的是在调用
foo
之后调用
bar

echo foo();
bar();

您可以在foo()函数的返回中调用bar()-
returnbar()您想查看条形图,但不想调用函数打印它?)你不能在
return
语句后调用函数。@roberto06-实际上你可以,使用
finally
-但在这种情况下,这似乎是一个令人讨厌的黑客行为。@Philipp我不知道,我只是看了一眼,天哪,它脏了……你可以在foo()函数的返回中调用bar()-
return bar()您想查看条形图,但不想调用函数打印它?)您不能在
return
语句后调用函数。@roberto06-实际上您可以,使用
finally
-但在这种情况下,这似乎是一个令人讨厌的黑客行为。@Philipp我不知道,我只是看了一眼,天哪,它脏了……因为早些时候return语句没有返回任何值。这就是为什么我建议你移除它。但是如果你留着它就好了。除非函数返回值,否则它将一直工作。但是return语句必须写在末尾。因为,前面的return语句没有返回任何值。这就是为什么我建议你移除它。但是如果你留着它就好了。除非函数返回值,否则它将一直工作。但是return语句必须写在末尾。