6

I have problem with break from loops. I have code like this:

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

And I need break while(true)

Vaflan
  • 103
  • 1
  • 9
  • Please don't do this. If you need to use break 2; instead of break; http://php.net/manual/en/control-structures.break.php – Sándor Tóth Aug 27 '14 at 12:10

3 Answers3

21

You can specify how many loop you want to break that way :

break 2;

So in your case :

while(true) {
    foreach($return AS $row) {
        if($row['timer'] > 15){
            break 2;
        }
    }
    sleep(2);
}
Clément Malet
  • 5,062
  • 3
  • 29
  • 48
1
$breakfromloop = false;
while(!$breakfromloop) {
    foreach($return AS $row) {
        if($row['timer'] > 15)
        {
            $breakfromloop = true;
        }
    }
    sleep(2);
}
craig1231
  • 3,769
  • 4
  • 31
  • 34
0

You could try something like this:

$return = array(...);
$break = false;
while(true) {
    foreach($return AS $row) {
        if($row['timer'] > 15){
            $break = true;
            break;
        }
    }
    if(true === $break) break;
    sleep(2);
}
Travis Weston
  • 903
  • 6
  • 24