Smartyのhtml_checkboxes拡張
※実経験の記憶を頼りに自宅の PC 環境(VMWareなど)で再現している内容もあるのでご注意下さい
2009-10-30
PHP の Smarty を利用したサイトの場合、チェックボックスやラジオボタンのフォームの作成が容易となります。
しかし、簡単な分、かゆい所に手が届かなく、項目間(セパレート)の表現が固定されてしまいます。
例えば、改行タグや半角スペースなど、お決まりの区切り文字はありますが、項目を 3 段表示したいなどレイアウトに自由度を求めたくなります。
[チェックボックスの例]
{html_checkboxes name="fruit" options=$fruitList selected=$fruit separator=" "}
{html_checkboxes name="fruit" options=$fruitList selected=$fruit separator="<br />"}
いろいろ調べてみたところ、とあるブログで html_checkboxes の拡張性について書いてありました。これを利用すれば、今よりはレイアウトの幅が広がりそうです。
・smarty研究(1) フォーム部品関数は隠し属性assignで使いやすく!
上記のブログでは、cycle を利用した例が載っていますが、foreach で回すことになるので、細かい調整はできそうですね。あまりビュー側でロジックは書きたくないですが、チェックボックスのオブジェクトを 1 個 1 個書くよりは随分マシになりそうです。
関連記事
上記の記事に関連する記事(最新の10件)です。


