会php的请进下,函数小问题请教

来源:百度知道 编辑:UC知道 时间:2024/06/07 16:38:31
请大家看下代码
<?php
function foo()
{
function bar()
{
echo "floor";
}
echo "string";
}
foo();
bar();
?>
我想问的是,函数不是从上住下执行的吗??
按我的理解是:
foo(); 调用foo函数。遇到function bar()因为没有调用bar(),故没有调用成功!
echo "string";
函数关闭!
再次调用bar()的时候,因为在函数在函数体内不能调用,调用失败!
应该是输只输出string才对,为什么全都输出了??
如果说,要是在函数体内调用函数,要先调用外面的函数,再调用里面的,这就有点对了,可是你在看下段代码!
<?php
function foo()
{
function bar()
{
echo "floor";
}
echo "string";
}
foo();
foo();
?>
为什么这里调用两次错误一次???
函数不是说可以多次的调用吗??
为一句经典的话说一下上面的题目!
请各位大侠帮帮我!谢谢!

应该这样理解:
foo(); 调用foo函数。遇到函数bar()因为没有调用bar(),故没有执行bar()函数!(而非没有调用成功! )
对于函数内嵌函数,应该这样理解!
先调用foo(),才能调用bar()函数!

你可以试着把foo(),bar()分别注释了看看结果就知道!
多多做做实验,就知道了!
不过,看人家的代码,好像这种函数内嵌函数的情况特别少!

尽量少用,我觉得!你说呢?