php函数问题? 为什么会等于30?... 为什么会等于30? 展开 我来答 2个回答 #热议# 上班途中天气原因受伤算工伤吗? 百度网友48429e1 2019-04-06 · TA获得超过336个赞 知道小有建树答主 回答量:340 采纳率:73% 帮助的人:133万 我也去答题访问个人页 关注 展开全部 这就是函数的递归调用。函数执行到最后一行的时候,就会调用自身,直到 $m <= $n 的时候,直接返回 $n , 不在向下执行,上一级的函数得到返回值后,继续执行 "+ $m" 的运算。 更多追问追答 追问 21哪来的? return后续代码不执行,条件满足return $n应该是输出6,+$sum应该不起作用 追答 13 + 8 追问 嗯,return后续代码不执行吧 追答 不执行。每次函数调用会创建一个独立的运行环境,return 之后,这个环境就销毁了,并将 return 的值返回到调用它的那个函数的运行环境中。可以将上面每一张截图看作一个函数的运行环境,蓝色箭头是在当前运行环境的基础上创建了一个新的环境。粉色箭头是函数运行结束,并将值返回到调用它的那个函数当中,这时这个函数会继续向下执行。大概是这个意思,可能不是很准确。 追问 相当于递进去,再调用自身值回来? 追答 我不太明白你说的“自身值”是什么。在这个例子里边,主调函数在被调函数没有返回的情况下,是不会向后执行的,它必须等待被调函数执行完了,才能继续执行下面的代码。return sum($m-1, $n) + $m;执行到这一句的时候,必须等sum($m-1, $n),执行完了,才能用得到的返回值与 $m 相加,然后返回相加的结果。 追问 哦,这样,你好犀利,php你学了多久了? 追答 我也就是刚刚入门,我说的也只是我的理解,函数实际的调用过程要复杂的多,要想深入了解这些底层的原理,只学 PHP 肯定是不够的,如果能系统学一下计算机组成原理,操作系统相关课程,对理解这些问题会有很大的帮助。 追问 系统学计算机原理不容易 追答 其实什么事想要做好都不容易。 追问 说的也是,你php学到那? 追答 基本上是用到哪学哪 追问 好吧 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 青翠接皇城 2019-04-07 知道答主 回答量:18 采纳率:0% 帮助的人:4.2万 我也去答题访问个人页 关注 展开全部 sum(6,9)=sum(6,8)+9;sum(6,8)=sum(6,7)+8;sum(6,7)=sum(6,6)+7;sum(6,6)=6;则:sum(6,9)=6+7+8+9=30 更多追问追答 追问 6+7+8+9=30,是每次循环的$m相加的? 追答 对的 追问 sum(6,6)=6为什么得6 追答 sum函数有两个参数:$n和$m;对于sum(6,6)来说,$n=6,$m=6;因为6<=6,所以$n<=$m,则sum函数返回$n,即sum(6,6)=$n=6。 追问 嗯,这样 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询 其他类似问题 2021-09-29 PHP ===什么意思 1 2022-09-28 php 中!== 是干嘛用?请举例说说吧 2016-09-02 什么是PHP的函数? 2 2011-01-31 关于php编程问题 1 2016-06-04 php函数的简介 2016-08-11 php该怎么学啊,很多函数看到就有点晕! 1 2012-10-21 php的问题 2011-09-23 php相关问题???? 更多类似问题 > 为你推荐: