我需要一个关于PHP嵌套for循环的解释,你能解释一下下面的代码是如何工作的,为什么结果是:
for ($a=0; $a < 10; $a++) {
for ($b=0; $b < 10; $b++) {
echo $b;
echo $a;
}
}
我将对代码做两处修改,以便更容易解释。第一个变化是$b
迭代到5而不是10。第二个变化是对echo
进行了格式化,这样在运行代码时就不会得到一堆乱七八糟的数字。试着运行这个:
for ($a = 0; $a < 10; $a++) {
for ($b = 0; $b < 5; $b++) {
echo "a = ".$a.", b = ".$b."<br>'n";
}
}
发生的是$b
计数到5,然后$a
增加1,$b
又下降到0。这将发生10次,因为$a
计数为10。下面是前几次迭代的结果:
a = 0, b = 0
a = 0, b = 1
a = 0, b = 2
a = 0, b = 3
a = 0, b = 4
a = 1, b = 0
a = 1, b = 1
a = 1, b = 2
a = 1, b = 3
a = 1, b = 4
a = 2, b = 0
a = 2, b = 1
a = 2, b = 2
a = 2, b = 3
a = 2, b = 4
a = 3, b = 0
a = 3, b = 1
…and so on…
你有两个for循环
第一个循环运行内部第二个循环10倍。
外循环每运行一次,内循环也运行10倍。
内部循环也输出变量$b和$a。