用户定义函数在另一个用户定义函数PHP中的排序
我不明白在函数中使用函数时,排序是如何工作的用户定义函数在另一个用户定义函数PHP中的排序,php,Php,我不明白在函数中使用函数时,排序是如何工作的 function funcChild(){ echo "Sparta"; } function funcMain($panic){ echo "This is $panic"; } funcMain(funcChild()); 它输出: SpartaThis is 我只想让它输出“This is Sparta”。然后你需要返回函数中的值,这样它就可以被传递到下一个函数,而不是echo它就在那里。echo和return是不
function funcChild(){
echo "Sparta";
}
function funcMain($panic){
echo "This is $panic";
}
funcMain(funcChild());
它输出:
SpartaThis is
我只想让它输出“This is Sparta”。然后你需要
返回函数中的值,这样它就可以被传递到下一个函数,而不是echo
它就在那里。echo
和return
是不等价的。当你回显某个东西时,它会立即打印出来,而不是存储在任何地方。当代码执行时,funcChild()
首先执行,因为funcMain()
试图将其用作参数funcChild()
将“Sparta”回显到屏幕上,然后不返回任何内容供funcMain()
使用。这意味着funcMain()
在没有输入的情况下运行
将echo“Sparta”更改为返回“Sparta”
这就像数学一样,它是由内而外开始的,你必须生成报税表,而不是直接打印
function funcChild(){
return "Sparta"; // return ... not direct print!
}
function funcMain($panic){
echo "This is $panic";
}
funcMain(funcChild());
为什么不将代码更改为:
function funcMain($panic) {
echo "This is $panic";
}
怎么办?我看不出你为什么想要或需要做你正在尝试的事情。但是,您得到结果的原因是对funcChild的调用是作为funcMain的参数发生的。因此,funcChild首先执行,然后funcMain执行
如果你一定要做你想做的事,那么
funcChild(funcMain())应该是如何做到的。我可以借用你的眼睛吗?恐怕我自己需要它们普莱吉特和可以理解的…:d修改funchild以返回而不是回显;或者使用输出缓冲调用funcChild,然后将该缓冲值传递给funcMain
function funcChild(){
return "Sparta"; // return ... not direct print!
}
function funcMain($panic){
echo "This is $panic";
}
funcMain(funcChild());
function funcMain($panic) {
echo "This is $panic";
}