技术PHP - 在同一循环中中断并继续

时间:2016-04-12 12:51:08

标签: php loops break continue

可以在没有变量的2个循环中使用break / continue吗? (没有继续2;或者中断2;)

示例不起作用:

while(1) {
  // some code
  while(2) {
    // some code
    if(expr) {
      break; // break while(2)
      continue; // continue while(1) but never used
    }
    // some code
  }
  // some code
}

变量解决方案:

while(1) {
  // some code
  $continue = false;
  while(2) {
    // some code
    if(expr) {
      $continue = true;
      break;
    }
    // some code
  }
  if($continue) {
    continue;
  }
  // some code
}

在while(2)循环中有break / continue的任何解决方案吗?另一种最好的方式?

编辑。例如:

for($i=0; $i < 100; $i++) {
    $a = mt_rand(0, 1000);
    for($j=0; $j < 100; $j++) {
      if($j === $a) {
        break; // and continue the first loop
      }
    }
    echo "how to never display this string if second loop break?";
} 

1 个答案:

答案 0 :(得分:0)

你不需要这些变量,只需将“继续”从“while(2)”中取出,如果“expr”为真,它将断开“while(2)”并继续“while(1)”。< / p>