<?php
function recursion(){
static $count = 0;
$count++;
echo $count." ";
if($count < 10){
recursion();
}
echo $count." ";
$count--;
}
recursion();
?>
请问运行结果为何是
1 2 3 4 5 6 7 8 9 10 10 9 8 7 6 5 4 3 2 1
1.为何不是
1 2 3 4 5 6 7 8 9 10 10
2.它的退出条件是什么?
1.因为PHP是同步执行,你满足条件一直递归执行recursion()自然就是相当于一直嵌套,那么同步执行下来自然就是
1 2 3 4 5 6 7 8 9 10 10 9 8 7 6 5 4 3 2 1
你可以把 其中一个 换成其他的就能很直观的看出来了
2.当$count = 10 的时候自然就退出了,不执行递归,所以会有 10 10 出现