2

私は多次元の連想配列を持っており、それをスマートなテンプレートに渡します。smartyテンプレートで以下のコードを使用して、ブラウザーで表示されている2つのテーブルを生成します。
スマートなコード:

<!--language:smarty-->
{foreach from=$allarr key=header item=table}
            <h5>{$header}</h5>
            <table> 
                <tr>
                    <td>{t}Emp #{/t}</td>
                    <td>{t}Employee Name{/t}</td>
                    <td>{t}Amount{/t}</td>
                </tr>
                    {foreach from=$table item=sub}   
                            <tr>
                                    <td>{$sub.emp_num}</td>
                                    <td>{$sub.user_name}</td>
                                    <td>{$sub.amount}</td>
                            </tr>
                    {/foreach}
                <tr>
                    <td colspan="2">{t}Variation Total{/t}</td>
                    <td colspan="1">{t}+++{/t}</td>
                </tr>
            </table>
{/foreach} 

テーブル:

Table One
________________________________
Emp #   |Employee Name  |Amount |
________|_______________|_______|
1000001 | Test User     | 775.00|
26      | user1         | 555.00|
________|_______________|_______|
Variation Total         | +++   |
________________________|_______|

Table Two
______________________________
Emp #   |Employee Name| Amount|
________|_____________|_______|
1000001 | Test User   | 110.00|
________|_____________|_______|
Variation Total       | +++   |
______________________|_______|

私が欲しいのは、「+++」を各金額列の値の実際の合計に置き換えることです。何も機能していないようです。誰か助けてもらえますか?前もって感謝します。

4

1 に答える 1

4

方法を考え出した。:) 完全なコードは以下のとおりです。

{foreach from=$allarr key=header item=table}
       <h5>{$header}</h5>
       <table> 
          <tr>
               <td>{t}Emp #{/t}</td>
               <td>{t}Employee Name{/t}</td>
               <td>{t}Amount{/t}</td>
         </tr>
         {foreach from=$table item=sub}   
         <tr>
               <td>{$sub.emp_num}</td>
               <td>{$sub.user_name}</td>
               <td>{$sub.amount}</td>
         </tr>
        {assign var="sum" value="`$sum+$sub.amount`"}
        {/foreach}
        <tr>
              <td colspan="2">{t}Variation Total{/t}</td>
              <td colspan="1">{t}{$sum}{/t}</td>
              {assign var="sum" value=0}
       </tr>
    </table>
{/foreach}
于 2012-08-28T07:26:33.940 に答える