2012-02-21 107 views
2

基本上我有一組對象值我想要呈現的2名獨立的HTML列表對象foreach循環迭代僅偶數值

我想做到這一點最簡單的方法是隻在一個列表中顯示脣上,只有奇在其他

這裏是顯示一個列表

<ul> 
    <?php foreach ($values as $value) : ?> 
    <li><?php echo $value->value; ?></li> 
    <?php endforeach; ?> 
    </ul> 
+0

和你的問題是? – Kokers 2012-02-21 19:57:28

+0

http://stackoverflow.com/questions/4014464/foreach-special-treatment-of-every-nth-item-odd-even-for-example – Cheery 2012-02-21 20:01:29

回答

4

試試這個當前代碼:

<ul> 

<?php 
/* read the index key */ 
foreach ($values as $key => $value) : 

/* skip the current element if it doesn't have an even index */ 
if($key % 2 == 1) continue; 

?> 
<li><?php echo $value->value; ?></li> 
<?php endforeach; ?> 

+0

謝謝你,這非常簡單 – user1019144 2012-02-21 21:27:50

+0

不客氣。我很高興它有幫助:) – 2012-02-21 21:36:59

1

您沒有指定數組是否具有整數索引。所以我使用一個單獨的索引樞軸。這會做。

$v=array(); 
$index = 1; 
foreach ($values as $value){ 
    $v[($index++)%2][]=$value->value; 
} 
list ($evens, $odds) = $v; 

echo "<ul><li>".implode("</li><li>", $odds)."</li></ul>"; // show list of odds 
echo "<ul><li>".implode("</li><li>", $evens)."</li></ul>"; // shows list of even 
+0

是的,每個值都有一個ID $ value-> id,這會使它更簡單 – user1019144 2012-02-21 21:18:42

+0

@ user1019144它無關緊要什麼是對象屬性的名稱。我在說'$ values'是一個正常的數組?或對象或關聯數組? – 2012-02-21 21:27:04