2012-04-01 9 views
-1

を広告を表示:は、ループのCakePHP内

<?php foreach ($posts as $post): ?> 

<li>POST</li> 

<?php endforeach; ?> 

私はポスト間に広告を表示する方法をを5つの項目の後に一度だけ、すべての5つの項目を言うのか?

私は$post[5]のようなものを考えましたが、間違ったツリーを吠えているかどうかはわかりません。どんな提案/フィードバックと例も感謝します。

答えて

1

データが均一にインデックス化(と、それは、CakePHP find()の結果だ場合、それがある)と仮定すると:私が使用する

foreach($posts as $index => $post) { 

    // display the post 

    if($index % 5 == 4) { // every fifth post or $index == 4 for only the fifth 
     // display the ad 
    } 
} 
+0

===(厳密な比較) – mark

+0

はなぜ@マーク? '$ x%5 == 4'は' $ x%5 === 4'とどのような状況で違いますか?インデックスは 'find()'から出てくるならば整数であることが保証されています。 – JJJ

+0

ほんの少しの重要なことはありません^^。しかし、それはちょうどphpが厳密に型安全でないほど悪いです。 (この場合のように)可能な限り、厳密な型を扱うための「良い」コーディングと見なされます。 @私はhttp://flow3.typo3.org/documentation/codingguidelines/php.htmlなどを参照してください(私はちょうどGoogleの最初のドキュメントをリンクしましたが、おそらくもっと一般的なガイドラインがあります)。 – mark