发布网友 发布时间:2022-04-06 07:26
共6个回答
热心网友 时间:2022-04-06 08:56
这不是一个死循环, 是9个死循环。
function fun($i=0){执行第二次的时候,$i 永远是2, 还是小于10,又是一个死循环, 以此类推。
如果想输出1到10你不用写这么复杂的, 这样写即可:
function outNumber() {热心网友 时间:2022-04-06 10:14
如果要输出1-10则将while改为if。
递归函数需要有退出递归的条件判断,不然就会出现死循环
因为while是一个循环语句,$i=10后会无限执行while循环
热心网友 时间:2022-04-06 11:48
谁教你这样写代码的,另外你的$i++只执行一次,没有写到while循环,fun函数你这样在while调用,很容易会崩坏服务器的
function fun($i=0){热心网友 时间:2022-04-06 13:40
function fun($i=0) {
$i++;echo$i.'<br/>';
while($i<10){
fun($i); // 递归调用
}
}
fun();
刚开始 输出 1 2 3 4 5 6 7 8 9 10 10后面一直输出10然后程序死循环,函数自身调用自身,这叫递归,但是递归没有出口,所以就死循环了!
热心网友 时间:2022-04-06 15:48
没错,9个死循环 永远跳不出来了 哈哈哈哈
热心网友 时间:2022-04-06 18:12
学习PHP技能知识,不妨关注“广东优就业”,更多IT行业技能干货等着你