プロが教える店舗&オフィスのセキュリティ対策術

お世話になっております。
maru7406と申します。

今、phpとsmartyでかなり困っております。
お分かりの方がいましたら教えてください。

{section name=AAA loop=BBB}
{assign var="idx" value=$smarty.section.AAA.index}

 {section name=aaa loop=bbb}
 {assign var="idy" value=$smarty.section.aaa.index}

 {/section}

{/section}

で、ループ処理をしようと考えております。

loop=bbbの後ろに文字列として$idxを|cat:で連結し、
ループをまわしたいのですが、うまくいきません。
ちなみにappendしている部分は、
$z = 0;
$x = substr($_stationInfo_list[0][line_cd],0,5);
 for ($y=0; $x === $_stationInfo_list[$y][line_cd]; $y++)
  {
   $this->append("BBB".$z, $_stationInfo_list[$y]);
  }

$z = 1;
while($z < count($_stationName)){
 $x = substr($_stationInfo_list[$y][line_cd],0,5);
  for ($y=$y; $x === $_stationInfo_list[$y][line_cd]; $y++)
   {
   $this->append("BBB".$z, $_stationInfo_list[$y]);
   }
   $z++;
  }
です。
loop=bbb0という配列が欲しいのですが。
ちなみに、
{bbb0|@debug_print_var}では望んでいる配列がアサインされているのを確認しています。
単純に、{section name=aaa loop=bbb|cat:$idx}
では何がうまくいかないのでしょうか。
わかる方がおりましたらよろしくお願いいたします。

A 回答 (1件)

loopに文字列を渡しても意味がないのではないでしょうか。


変数か整数を渡さないと正しくは動作しないと思われます。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!