首页 > 解决方案 > foreach from=$results item="entry" name=status

问题描述

我正在尝试将数组中特定 ({$entry.zip}) 字段的值相加,但我似乎无法弄清楚,如果可能的话,我不想特别想通过一个循环。

{foreach from=$results item="entry" name=status} 
    {$entry.id} {$entry.id} {$entry.id} {$entry.zip}
{/foreach}

{$entry.zip}产生各种数字,我想把它们加起来为我提供一个运行总数。是否可以?

干杯,杰森。

标签: smarty

解决方案


调整你的例子这应该是相当直截了当的。

{assign var='mysum' value=0}
{foreach from=$results item="entry" name=status} 
    {assign var='mysum' value=$mysum+$entry.zip}
    {$entry.id} {$entry.id} {$entry.id} {$entry.zip} {$mysum}
{/foreach}

但是,为了将应用程序逻辑与 Smarty 通常用于的视图层分离,我会将其放在您的 php 代码中的某个位置,甚至可能放在导致$results.


推荐阅读