- ベストアンサー
Smarty配列変数を並べて1行に表示したい
以下のように、配列変数を二つ並べて、一行に表示したいです。 {$list1}{$list2} ご存知の方がおられましたら教えてください。 よろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
テンプレート内の配列連結かな。 対応の仕方は、4種類ほどあります。 1.PHP内部でSmartyのappendを使用する。 $this->append ("list",$list2) 2.PHP内部でPHPのarray_pushを使用する。 array_push($list,$list2); 3.テンプレート内でPHPを使用する。 $this->append('list',$this->getTemplateVars("list2") ); 4.プラグインを自作する。 調べてください。 どれが適切なのか仕様を見ないとわからないのですが、今度も使用するのであれば、4をお勧めします。 ※Smartyの最新版ではテンプレート内でPHPの使用が制限されている可能性があります。 詳しくは、下記の変数をお調べください $smarty->allow_php_tag $smarty->php_handling この設定を変更することは、セキュアに関わってきますので気をつけください。
その他の回答 (1)
- Dags
- ベストアンサー率78% (11/14)
回答No.1
文字結合 {$list1|cat:$list2}
質問者
補足
説明していなくてすみません。 このようにすると、連結しないで、末尾についてきてしまいます。 <select name="id"> {$list|cat:$list2} </select> $listは配列です。 教えてください。 なにとぞ!!
お礼
3.の方法で出来ました。 実装方法を何通りも教えていだたきとても勉強になりました。 感謝しております。 ありがとうございました。