我试图创建一个简单的foreach
循环。但是,在3
刚刚完成之后,我只需要运行一次唯一的语句。然后继续我离开的地方。这是我的循环:
$foo = array(1,2,3,4,5);
$i;
foreach($foo as $bar):
$i++;
echo $bar;
endforeach;
但是,我不确定该怎么说:
if $i == 4
>> interject unique code
continue loop
答案 0 :(得分:5)
在这种情况下,正常的if
语句应该适用于您:
$i = 0;
foreach ($foo as $bar) {
echo $bar;
if ($i++ == 4) {
// do unique code
}
}
当$i
为4
时,仅执行一次(除非您在循环中的$i
以外的地方明确设置$i++
)。
答案 1 :(得分:3)
使用此处的$ i变量。
$foo = array(1,2,3,4,5);
$i;
foreach($foo as $bar):
echo $bar;
if ($i++ == 4)
{
// 1-off code goes here
}
endforeach;
答案 2 :(得分:2)
您将使用简单的if语句
foreach($foo as $bar):
$i++;
if($i==4) {
// run unique statement
}
echo $bar;
endforeach;
答案 3 :(得分:-1)
尝试使用
$foo = array(1,2,3,4,5);
$i = 0;
foreach($foo as $bar):
$i++;
if($i=='4'){
//interject unique code
continue;
}
echo $bar;
endforeach;
当$ i在继续执行之前将在if块中仅达到4代码并且循环将继续下一个值。
答案 4 :(得分:-1)
只需在foreach中放置一个if语句,它只会在第三个循环后使用。
$foo = array(1,2,3,4,5);
// Your array key will give you your iteration number
foreach($foo as $key => $val):
{
echo $bar;
if $key == 3
{
echo "I'm in the fourth iteration";
//Or any other code
}
}