PHP递归函数用法
递归函数即为自挪用函数,正在函数体内间接或直接进行自调,但需求设置自调的前提,若餍足前提,则挪用函数自身,若没有餍足则终止本函数的自调,而后把流程的主控权前往给上一层函数执行。
代码示例
<?php //申明一个函数,用于测试递归 function test($n){ echo $n." "; //正在函数开端输入参数的值 if($n>0){ //判别参数能否年夜于0 test($n-1); //假如参数年夜于0则挪用本人,并将参数减1后再次传入 }else{ //判别参数是没有年夜于0 echo "<--------> "; } echo $n." "; } test(10); //挪用test函数将整数10传给参数 ?>
起首考虑一下,这个例子终极的输入后果是甚么?
好,来看一下本函数输入的后果:
10 9 8 7 6 5 4 3 2 1 0 <--> 0 1 2 3 4 5 6 7 8 9 10
怎样样,没有晓得这个后果能否跟想象的同样呢?
步骤解说
第一步,执行test(10),echo 10,而后由于10>0,执行test(9),前面另有没来患上及执行的echo 10
第二步,执行test(9),echo 9,而后由于9>0,执行test(8),一样前面另有没来患上及执行的 echo 9
第三步,执行test(8),echo 8,而后由于8>0,执行test(7),一样前面另有没来患上及执行的 echo 8
第四步,执行test(7),echo 7,而后由于7>0,执行test(6),一样前面另有没来患上及执行的 echo 7
第五步,执行test(6),echo 6,而后由于6>0,执行test(5),一样前面另有没来患上及执行的 echo 6
...........
第十步,执行test(0),echo 0,此时0>0的前提没有餍足,没有正在执行test()函数,而是echo “<-->”,而且执行前面的 echo 0
10 9 8 7 6 5 4 3 2 1 0 <--> 0 1 2 3 4 5 6 7 8 9 10
保举教程:《PHP教程》
以上就是PHP递归函数用法的具体内容,更多请存眷资源魔其它相干文章!
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
抱歉,评论功能暂时关闭!