2017-06-28 14 views
1

私はforeachループ内のdivのクラスを変更しようとしています。col-md-12を持っている最初のアイテムが必要ですし、次の2つはcol-md-6と戻るスタートは再び..PHPは1番目と4番目(以降)のクラスを追加します

col-md-12 
col-md-6 col-md-6 
col-md-12 
col-md-6 col-md-6 
col-md-12 
col-md-6 col-md-6 

は、ここで最初の項目のためにそれをやってされていない、私がやったものだ:

<?php $j=0;foreach ($value as $item) : $linky = ''; ?>     
    <div class="grid-item <?php if ($j % 3 == 1) : ?>col-md-12<?php else : ?>col-md-6<?php endif; ?>"> 
     xxx 
    </div> 
<?php $j++;endforeach; ?> 

これは私

col-md-6 (i want this one to be col-md-12) 
col-md-12 
col-md-6 col-md-6 
col-md-12 
col-md-6 col-md-6 
を与えています
+2

'$ j%3 === 0'のテストではなく、1 – Capsule

+0

うん、ありがとう、それは働いた。うん、それは一日遅れて、私は終わった:) –

答えて

1

あなたはforeachを使用して、以下のソリューションを使用することができます。

<?php $j=0;foreach ($value as $item) : $linky = ''; ?>     
    <div class="grid-item <?php if ($j % 3 === 0) : ?>col-md-12<?php else : ?>col-md-6<?php endif; ?>"> 
     xxx 
    </div> 
<?php $j++;endforeach; ?> 

あなたはまた、forを使用して、以下のソリューションを使用することができます。

<?php for ($j = 0; $j < count($value); $j++) : $linky = ''; ?>     
    <div class="grid-item <?php if ($j % 3 === 0) : ?>col-md-12<?php else : ?>col-md-6<?php endif; ?>"> 
     xxx 
    </div> 
<?php endfor; ?> 

01の違いは何ですか:

index ($j) | $j % 3 === 1 | $j % 3 === 0 
---------------------------------------- 
     0 | false  | true 
     1 | false  | false 
     2 | false  | false 
     3 | false  | true 
     4 | true   | false 
     5 | false  | false 
     6 | false  | true 
     7 | true   | false 
関連する問題