用于php中的嵌套循环


for nested loop in php

我需要一个关于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。