php break 退出循环到底是怎么用的

2025-03-23 04:48:59
推荐回答(5个)
回答1:

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;
    }
}
?>

回答2:

从头顺吧.
第一个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的值了。

回答3:

break只会跳出包含他的循环,包含这个循环的循环是不会理会的。

回答4:

其实楼上说那么多就是要告诉你,第二个while循环完了才会走第一个while的第二遍,而你在第二个while的第二次循环就已经退出了,所以第一个while没走第二遍,所以不会有$i=2

回答5:

亲,看的我乱乱的,没明白你的意思,break是跳出本次循环!