关于PHP中的递归函数的问题
发布网友
发布时间:2022-04-07 10:08
我来回答
共2个回答
热心网友
时间:2022-04-07 11:38
童鞋你好,你会产生这样的疑问是因为你没有搞清楚函数参数的使用范围,一级递归的过程,下来解析一下此函数的递归过程:
10 第一次递归 sum=10,先输出10,执行递归后,demo里面的 依然是10
9 第二次递归 sum=9,先输出9,执行递归后,demo里面的 依然是9
7 。
6 。
5 。
4 。
3 。
2 。
1 第10次递归 sum=1,先输出1,执行递归后,demo里面的 参数是1, 接着发生最后一次递归
0 第11次递归 demo里面的参数值为0,故不再递归了,由于这次sum=0 故执行else echo "--------------------<br>";
接着执行 echo $num."<br>"; 后返回sum=1 时 的 这里接着执行: echo $num."<br>";
}
一次向后倒着执行 echo $num."<br>";
} 故得到下面的结果!
---------------------------
0
1
2
3
4
5
6
7
8
9
10
热心网友
时间:2022-04-07 12:56
最后那个0-10是函数的最后一行输出的
从执行的流程看,很简单的
10进入函数-〉输出10-〉9进入函数-〉输出9.。。。。
输出--------〉输出0-〉跳出函数-〉输出1-〉。。。。