使用继续从交换机内部跳过foreach中的迭代

时间:2013-10-26 12:09:42

标签: php foreach switch-statement continue

$arr = array('not want to print','foo','bar');

foreach($arr as $item) {
  switch($item) {
      case 'foo':
         $item = 'bar';
         break;
      case 'not want to print':
         continue;
         break;
  }

  echo $item;
}

http://codepad.org/WvW1Fmmo

但是“not want to print”得到了回应。为什么继续不适用于foreach?

1 个答案:

答案 0 :(得分:5)

来自http://php.net/manual/en/control-structures.continue.php

  

注意:请注意,在PHP中,switch语句被认为是用于 continue 的循环结构。

因此请使用continue 2;继续包含它的循环。

$arrcase之间也存在不匹配。数组值中的第一个单词是no,但您要检查not中的case

Corrected codepad