Re: [請益] 請問大家用Smarty在這種情況會怎麼做

看板PHP作者 (我就是我)時間14年前 (2009/09/15 16:33), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/4 (看更多)
※ 引述《knives ()》之銘言: : 因為我都習慣在Smarty裡用foreach的方法 : 但是如果碰到要用迴圈印出下面這種格式的表格,大家都會怎麼解決 : <table> : {{foreach item=val from=aData key=key1 }} : {{if key1 % 3 }} : <tr> : {{/if}} : <td>{{$val}}</td> : {{if key1 % 3 }} : </tr> : {{/if}} : {{/foreach}} : </table> : 所以上面的跑法是一列裡面都有三格 : 但是問題來了,如果遇到最後一列,不足三格的話,比方說剩下一格,就會變成置中 : 兩個就會變成平均分散 : 這樣就會很難看,我是希望無論如何都是長的一樣 : 可是我要怎麼判斷是最後一列 : 請問有用Smarty的人,都是怎麼做的 : 謝謝 去查smarty裡面有last和total 所以可以這樣用 在最後一筆的時候 做另外的處理 <table> {{foreach item=val from=aData key=key1 name=foo}} {{if key1 % 3 }} <tr> {{/if}} {{if ($smarty.foreach.foo.last == 1)&&($smarty.foreach.foo.totle%3 == 2)}} <td>{{$val}}</td></tr> {{else if ($smarty.foreach.foo.last == 1)&&($smarty.foreach.foo.totle%3 == 1)}} <td>{{$val}}</td><td></td></tr> {{else if ($smarty.foreach.foo.last == 1)&&($smarty.foreach.foo.totle%3 == 0)}} <td>{{$val}}</td><td></td><td></td></tr> {{else}} <td>{{$val}}</td> {{if key1 % 3 }} </tr> {{/if}} {{/if}} {{/foreach}} </table> 其實我覺得smarty很好用 但是它美中不足的地方 就是不能用巢狀式if 都要寫在一起= = 實在很難看 不過其他地方真的很好用 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.118.102.193 ※ 編輯: mattttt 來自: 140.118.102.193 (09/15 16:37)

09/15 17:29, , 1F
last是什麼意思阿,是下一筆的意思嗎
09/15 17:29, 1F
文章代碼(AID): #1Ahr5GSc (PHP)
討論串 (同標題文章)
文章代碼(AID): #1Ahr5GSc (PHP)