2013-02-12 55 views
0

比方說,我有8個PHP對象,我需要遍歷它們並根據它們的位置不同的信息輸出到HTML不同的信息。我已經開發了用於CSS和html的結構,你可以在這裏看到它:http://jsfiddle.net/v3qcc/9/ 我只需要幫助他們動態地放置它們的邏輯。幫助嵌套循環的邏輯在PHP

我需要每兩個對象,並放置在此包裝:

<div class="col"> 
    <div class="third"> 
     <div class="col-content">   
      **...Object One Here** 
     </div> 
    </div> 

    <div class="fourth"> 
     <div class="col-content">   
      **...Object Two Here** 
     </div> 
    </div> 
</div> 

<div class="col"> 
    <div class="third"> 
     <div class="col-content">   
      **...Object Three Here** 
     </div> 
    </div> 

    <div class="fourth"> 
     <div class="col-content">   
      **...Object Four Here** 
     </div> 
    </div> 
</div> 
+0

如果有人能幫助我的僞代碼,我願意嘗試將其代碼移出。我熟悉循環和php,但我無法圍繞如何做到這一點 – inspired 2013-02-12 16:10:56

回答

1
// heres a class 
class thing { 
public $ybob = 23; 
} 

// create an array of 8 of them 
$i = 0; 
$a= array(); 
while(8> $i){ 
$a[$i] = new thing; 
$i++; 
} 
//var_dump($a); 

// loop thru the array of objects 
$rows = 1; 
foreach($a as $ob){ 

// use modulus operator to work out if a row is odd or even 
echo (($rows % 2) === 1) ? '<br />NEW ROW' : '' ; 
echo $ob->ybob . ' - ' ; // output the objects data in any case 
$rows++; 
} 

在三元運算符4行了,你可以添加額外的行標籤,或還原的if/else,如果你想使用標記的更多的線路。

給出:

NEW ROW 23 - 23 - 
NEW ROW 23 - 23 - 
NEW ROW 23 - 23 - 
NEW ROW 23 - 23 - 
0

Personnaly,我將測試的指標,我每次循環遞增,如果是偶數或奇數和顯示模板根據需要對此。

1

試試這個:

<?php 

echo '<div class="col">'; 

for ($i=0; $i<$max_elements; $i++) 
{ 
    $class = ($i&1) ? "third" : "fourth"; 

    echo '<div class="'.$class.'"> 
       <div class="col-content">   
       **...Object num : '.$i.' Here** 
       </div> 
     </div>'; 
} 

echo '</div>';