如何使用Smarty打印记录集?
我需要显示查询(mysql)的结果,如何循环记录集而不将值分配给数组? 现在我这样做:
while($row = $this->mysql->fetch($rs)){
val[] = $row
}
$this->smarty->assign('val', val);
那么(在 template.tpl 中)
{section name=nr loop=$val}
{$val[nr].cod}<br />
{sectionelse}
<h1>No record</h1>
{/section}
我该如何优化它?
I need to show the result of a query(mysql), how can I loop the recordset without assign the values to an array?
Now I do:
while($row = $this->mysql->fetch($rs)){
val[] = $row
}
$this->smarty->assign('val', val);
then (in the template.tpl)
{section name=nr loop=$val}
{$val[nr].cod}<br />
{sectionelse}
<h1>No record</h1>
{/section}
How can I optimize it?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用 Smarty 的 foreach,尽管它不会使其变得更短:
You can use Smarty's foreach, although it doesn't make it any shorter:
也许 {html_table} 可以提供帮助。否则,您可以随意迭代行和列:
({foreach})
您还可以输出单元格的键:
maybe {html_table} can help. Otherwise you're free to iterate your rows and cols however you like:
(Smarty3 syntax of {foreach})
You can also output the cells' keys: