PHP新手在这里。我无法理解这里发生了什么。
function doEcho(){
echo ' Done';
}
echo 'Status ='. doEcho();
上面的代码将返回
DoneStatus =
为什么“完成”在“状态”之前出现?
谢谢你。
PHP新手在这里。我无法理解这里发生了什么。
function doEcho(){
echo ' Done';
}
echo 'Status ='. doEcho();
上面的代码将返回
DoneStatus =
为什么“完成”在“状态”之前出现?
谢谢你。
您的函数 doEcho 实际上并没有返回任何内容 - 它只是直接打印。所以会发生这样的事情:
您的行echo 'Status ='. doEcho();
调用 doEcho 函数以结合“Status =”和 doEcho 函数返回的任何内容。
doEcho 函数打印“Done”,然后什么也不返回。
“Status =”与nothing组合,仍然是“Status =”,然后被回显。
这就是结果打印为“DoneStatus =”的原因。如果您希望该函数返回要组合的文本,则需要这样做return ' Done';
。
这是因为如果你想从函数输出然后返回,函数首先打印。将函数中的“回声”更改为“返回”
尝试:
function doEcho(){
return ' Done';
}
echo 'Status ='. doEcho();