参照先: "PHP:limit foreach()文?"コードに追加する方法

私はこの記事を見つけました PHP:foreach()文を制限しますか? 私は何をしたいのか話しますが、自分のコードを編集する方法や、どこに配置するのかがわかりません。コードを置く場所を誰にでも教えてもらえますか/それを表示するように編集する方法X配列の数?

{~* Get Ads *~}
{~$ads2=array()~}
{~foreach $ads as $data~}
{~capture append="ads2"~}
{~if $data.code~}
<div>{~$data.code|decode~}</div>
{~else~} <div>{~if $data.url~}{~$data.title~}get('sideForce')~} width="120" height="60"{~/if~}>{~else~}{~$data.title~}{~/if~}</div> {~/if~} {~/capture~} {~/foreach~} {~* Advertise Here *~} {~if !$config->get('sideNoFill') || $config->get('sideNoFill')=='2'~} {~* Advertising Spots *~} {~if $adsRows>=5 || $config->get('sideNoFill')=='2'~} {~$rows=1~} {~else~} {~$rows=5-$adsRows~} {~/if~} {~* Advertising Text *~} {~if $config->get('sideAds')=='image'~} {~$adText="banner"~} {~elseif $config->get('sideAds')=='text'~} {~$adText="text link"~} {~else~} {~$adText="banner or text link"~} {~/if~} {~* Loop *~} {~section loop=$rows name="sidePanel"~} {~capture append="ads2"~} <div>Your 120x60 {~$adText~} here,
As Low As 8 Cents Per Day!
</div> {~/capture~} {~/section~} {~/if~} {~* Horizontal Ads *~} {~if $horizontal>0~} {~if count($ads2)~} <table cellpadding="4" cellspacing="0" style="border:0px;width:100%;table-layout:fixed"> {~$i=1~} {~foreach $ads2 as $data~} {~if $i==1~} <tr valign="top"> {~/if~} <td>{~$data~}</td> {~if $i==$horizontal~} {~$i=1~} </tr> {~elseif [email protected]~} <td colspan="{~$horizontal-$i~}"></td> </tr> {~else~} {~$i=$i+1~} {~/if~} {~if (++$i == 5) break;~}{~/if~} {~/foreach~} </table> {~/if~} {~* Vertical Ads *~} {~else~} {~foreach $ads2 as $data~} <div>{~$data~}</div> {~if [email protected]~}
{~/if~} {~/foreach~} {~/if~}

私はそれを置く場所を見つけるためにそれをまわりこませてみましたが、私はちょうど間違いを続けています。

私はVertical Ads Ver。を使用しています。 (お互いの上に1つずつ表示されます)

私は、表示されている広告の数を制限したいと思っています。今はすべての広告をすべてランダムに表示しています。私は引っ張って残りの忘れて次の負荷を忘れるそれらの最初のX番号を表示する以外は同じであることを望む。彼らはランダムな順序で来ているので、すべて同時に表示されるわけではありません。

0
nl ru de
私は擬似コードを少し苦痛なく読めるようにしましたが、関連する部品を取り出して少しきれいに書いてください。擬似コードはイラストにはいいかもしれないが、あまりにも多すぎる!
追加された 著者 Jørgen R,
そうですね、私は間違っていました。まだ痛い。
追加された 著者 Jørgen R,
長い、鋭い棒でそれを突き刺す。
追加された 著者 Vlad Preda,
これは擬似コードではなく、これはスマートなテンプレート構文です
追加された 著者 Fabian Schmengler,
うわー、これらの開閉タグが私の目を傷つける。
追加された 著者 Leigh,
それはPHPではありません。それは何ですか、なぜあなたはまだ火でそれを殺していませんか?
追加された 著者 Jan Hančič,
スマートなデフォルトの開閉タグを読めるように変更するのはなぜですか?
追加された 著者 scragar,
私はそれを作っていないし、それを書き直す知識も持っていない。
追加された 著者 David Macdonald,
あなたが見ることができるように、私は何を変えるべきか、またはブレーキ声明をどこに置くべきかについては、他の郵便で説明されているようにはわかりません。私はPHP/smartyに精通していないので、基本的なことを知っているだけです。
追加された 著者 David Macdonald,

1 答え

1)PHPコードではなく、Smartyテンプレートコードを編集しています。そのため、リンクしたコードが機能しなかったのです。 SmartyはPHPと非常に似通っていますが、同じではありません。

2) {break} コマンドでループを中断することができます。

{foreach $ads2 as $data}
  {if [email protected] >= 2}
   {break}   
  {/if}
{/foreach}

3) http://thedailywtf.com/ にそのコードを提出できますか?

0
追加された
「そのURLとは何か」「2007年の大半の間、「Worse than Failure」とも呼ばれるThe Daily WTFは、「情報技術の奇妙な変容」に特化したユーモラスなブログです。感嘆符 'WTF !?' "と"プロジェクトマネジメントから劇的に悪い発展を遂げ、不可解なコーディングの選択に至るまで、
追加された 著者 Danack,
どこに追加しますか?私はここに追加しました... {〜*垂直広告*〜} {〜else〜} {〜foreach $ ads2 as $ data〜} {〜foreach $ ads2 as $ data〜} {〜if $ data @ index> {〜$〜〜〜〜}〜{〜$〜〜〜}〜{〜$〜〜〜〜}/if〜} {〜/ foreach〜} {〜/ if〜}同じイメージは10回または15回連続して表示されます。
追加された 著者 David Macdonald,
たわごと私はそれを得た! {〜*垂直広告*〜} {〜else〜} {〜foreach $ ads2 $ data〜} {〜if $ data @ index> = 2〜} {〜ブレーク〜} {〜/ if〜} <div> {〜/ ifach〜} {〜/ ifach〜} {〜$ data〜} {〜if}
追加された 著者 David Macdonald,
あなたが投稿したURLは何ですか?
追加された 著者 David Macdonald,
PHP - 日本のコミュニティ [ja]
PHP - 日本のコミュニティ [ja]
4 参加者の

このグループではPHPについて話します。 パートナー:kotaeta.com