PHP从两个循环中退出

6

我在循环中遇到了问题。 我的代码如下:

<?php
$return = array(...);
while(true) {
    foreach($return AS $row) {
        if($row['timer'] > 15)
            break;
    }
    sleep(2);
}

我需要一个中断语句来跳出无限循环while(true)


请不要这样做。如果需要使用break 2;而不是break;,请参考http://php.net/manual/en/control-structures.break.php。 - Sándor Tóth
3个回答

21

你可以通过以下方式指定要中断的循环次数:

break 2;

所以在你的情况下:

while(true) {
    foreach($return AS $row) {
        if($row['timer'] > 15){
            break 2;
        }
    }
    sleep(2);
}

1
每天学习一些新东西。+1 - Travis Weston
是的,谢谢!这对我来说非常棒。 - Vaflan
我也不知道。+1! - Neil Yoga Crypto

1
$breakfromloop = false;
while(!$breakfromloop) {
    foreach($return AS $row) {
        if($row['timer'] > 15)
        {
            $breakfromloop = true;
        }
    }
    sleep(2);
}

0
你可以尝试这样做:
$return = array(...);
$break = false;
while(true) {
    foreach($return AS $row) {
        if($row['timer'] > 15){
            $break = true;
            break;
        }
    }
    if(true === $break) break;
    sleep(2);
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接