- 締切済み
smartyの配列について
お世話になっております。 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} では何がうまくいかないのでしょうか。 わかる方がおりましたらよろしくお願いいたします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- UmJammer
- ベストアンサー率58% (115/196)
loopに文字列を渡しても意味がないのではないでしょうか。 変数か整数を渡さないと正しくは動作しないと思われます。