我有一个php数组$numbers = array(1,2,3,4,5,6,7,8,9)
如果我使用foreach foreach($numbers as $number)
并拥有if语句if($number == 4)
在该行之后会跳过任何代码,在该行之后跳过任何内容并在5处开始循环?休息,回归,退出?
答案 0 :(得分:82)
您正在寻找continue声明。同样有用的是break,它将完全退出循环。这两个语句都适用于循环的所有变体,即。 for
,foreach
和while
。
$numbers = array( 1, 2, 3, 4, 5, 6, 7, 8, 9 );
foreach( $numbers as $number ) {
if ( $number == 4 ) { continue; }
// ... snip
}
答案 1 :(得分:17)
continue;
继续将告诉它跳过当前的迭代块,但继续循环的其余部分。适用于所有场景(适用于,等等)
答案 2 :(得分:3)
歇;将停止循环并使编译器退出循环。继续;将跳过当前的一个并进入下一个周期。 像:
$i = 0;
while ($i++)
{
if ($i == 3)
{
continue;
}
if ($i == 5)
{
break;
}
echo $i . "\n";
}
输出:
1
2
4
6 <- this won't happen
答案 3 :(得分:2)
我想你正在寻找继续声明。看看http://php.net/manual/en/control-structures.continue.php
DINEL