2011-02-11 160 views
0

我试图找出如何放置其他文本在foreach循环内的特定点,所以我的PHP的输出将是额外的文字:中断foreach循环添加

阿拉巴马阿拉斯加亚利桑那阿肯色SomeNewText 加利福尼亚州科罗拉多州康涅狄格州等等等等

继续;并打破;在这种情况下似乎不起作用。我不要想停止/退出foreach循环。

<?php 

$items = array("Alabama", "Alaska", "Arizona", "Arkansas", "California", "Colorado", "Connecticut", "Delaware", "Dist of Columbia", "Florida", "Georgia", "Hawaii", "Idaho", "Illinois", "Indiana", "Iowa", "Kansas", "Kentucky", "Louisiana", "Maine", "Maryland", "Massachusetts", "Michigan", "Minnesota", "Mississippi", "Missouri", "Montana", "Nebraska", "Nevada", "New Hampshire", "New Jersey", "New Mexico", "New York", "North Carolina", "North Dakota", "Ohio", "Oklahoma", "Oregon", "Pennsylvania", "Rhode Island", "South Carolina", "South Dakota", "Tennessee", "Texas", "Utah", "Vermont", "Virginia", "Washington", "West Virginia", "Wisconsin", "Wyoming"); 


$count = 0; 

foreach ($items as $item) 
{ 

if ($count == 3) 
{ 
echo 'SomeNewText'; 
} 

echo $item; 
echo "\n"; 

$count++; 

} 

?> 

任何想法?谢谢。

+0

您的标题和您的文字看起来像单独的问题。计数达到3时是否要退出foreach循环? – arnorhs 2011-02-11 00:12:18

+0

你绝对不希望**继续**。 Aaand是的,你需要关闭你的foreach循环。除此之外,代码应该完成这项工作。 – bassneck 2011-02-11 00:13:45

回答

0

如果你的意思是从此告别当条件满足时,循环的时候,你可以这样做:

<?php 
foreach ($items as $item) { 
    if ($count == 3) { 
    break; 
    } 
} 
?> 
2

这个逻辑看起来不错,但你需要关闭你的foreach循环。

$count = 0; 
foreach ($items as $item) 
{ 

if ($count == 3) 
{ 
echo '<td>SomeNewText</td>'; 
#continue; 
} 

echo $item; 
echo "\n"; 

$count++; 
} 

或者,您可以使用for循环。

0

不知道你想要排序的问题是什么,但是在你的代码中有一个错误,你需要关闭foreach循环,这应该给你你想要的结果。

echo $item; 
echo "\n"; 

$count++; 

} <-- here is missing 

?>