请帮助我理解这个例子吗?
为什么要打印" 10"十次?为什么不0 1 2 3 4 5 6 7 8 9?
<?php
function test()
{
static $count = 0;
$count++;
if ($count < 10) {
test();
}
echo "\n$count";
}
test();
答案 0 :(得分:2)
如果它小于10则递归并且不输出,当它为10时,它会落到echo
并且在每次退出时递归的10次打印10次。
如果在递归之前echo
,它将按照您的描述工作。此外,您需要在增加之前输出,否则您将无法获得0
:
function test()
{
static $count = 0;
echo "\n$count";
$count++;
if ($count < 10) {
test();
}
}
test();