break
(PHP 4, PHP 5)
break 结束当前
for,foreach,while,do-while
或者 switch 结构的执行。
break 可以接受一个可选的数字参数来决定跳出几重循环。
$arr = array('one', 'two', 'three', 'four', 'stop', 'five');
while (list (, $val) = each($arr)) {
if ($val == 'stop') {
break; /* You could also write 'break 1;' here. */
}
echo "$val
\n";
}
/* 使用可选参数 */
$i = 0;
while (++$i) {
switch ($i) {
case 5:
echo "At 5
\n";
break 1; /* 只退出 switch. */
case 10:
echo "At 10; quitting
\n";
break 2; /* 退出 switch 和 while 循环 */
default:
break;
}
}
?>
从头顺吧.
第一个while $i=0 < 10 自加1后输出$i=1
第二个while $j=0 < 5 自加1后 不满足 $j ==2 (此时$j=1)向下走,打印出$j=1
回到第两层while $j自加1的循环,while $j=1 < 5 ,$j自加1后,此时已满足$j==2条件,break 跳出循环,break 2 是指跳出两层循环,直接退出了。
$j++ 与 ++$j的区别,要搞清。($j++) 在括号里时是$j的值,出了括号范围就已经是自加1的值了。
break只会跳出包含他的循环,包含这个循环的循环是不会理会的。
其实楼上说那么多就是要告诉你,第二个while循环完了才会走第一个while的第二遍,而你在第二个while的第二次循环就已经退出了,所以第一个while没走第二遍,所以不会有$i=2
亲,看的我乱乱的,没明白你的意思,break是跳出本次循环!