【问题标题】:php smarty loop multidimensional arrayphp smarty循环多维数组
【发布时间】:2010-04-01 17:55:53
【问题描述】:

我正在为我的网站使用 smarty,我正在尝试遍历一个数组以打印出表格行...

数组如下所示:

Array
(
    [TM98800G] => Array
        (
            [zid] => Array
                (
                    [0] => 90001
                    [1] => 90002
                    [2] => 90003
                    [3] => 90004
                    [4] => 90005
                )

            [count] => Array
                (
                    [0] => 10
                    [1] => 10
                    [2] => 20
                    [3] => 25
                    [4] => 15
                )

        )
    [TM76654G] => Array
        (
            [zid] => Array
                (
                    [0] => 90301
                    [1] => 90302
                    [2] => 90303
                    [3] => 90304
                    [4] => 90305
                )

            [count] => Array
                (
                    [0] => 25
                    [1] => 25
                    [2] => 20
                    [3] => 35
                    [4] => 45
                )

        )
)

我正在尝试循环并打印出表格:

<h5>TM98800G </h5>

<table>
<tr>
  <td>90001</td>
  <td>10</td>
</tr>

<tr>
  <td>90002</td>
  <td>10</td>
</tr>

<tr>
  <td>90003</td>
  <td>20</td>
</tr>

<tr>
  <td>90004</td>
  <td>25</td>
</tr>

<tr>
  <td>90005</td>
  <td>15</td>
</tr>
</table>

<h5>TM76654G</h5>
<table>
<tr>
  <td>90301</td>
  <td>25</td>
</tr>

<tr>
  <td>90302</td>
  <td>25</td>
</tr>

<tr>
  <td>90303</td>
  <td>20</td>
</tr>

<tr>
  <td>90304</td>
  <td>35</td>
</tr>

<tr>
  <td>90305</td>
  <td>45</td>
</tr>
</table>

我尝试了嵌套的 foreach 语句并使用了部分,但我不知道如何正确循环它...

【问题讨论】:

    标签: php arrays loops smarty


    【解决方案1】:
    {foreach from=$array key=header item=table}
    <h5>{$header}</h5>
    
    <table>
        {foreach from=$table.zid key=k item=zid}
        <tr>
            <td>{$zid}</td>
            <td>{$table.count.$k}</td>
        </tr>
        {/foreach}
    </table>
    {/foreach}
    

    我认为应该这样做。

    【讨论】:

    • 很遗憾,没有...我明白了:语法错误:无法识别的标签:$table.count[$k]
    • @Knock 你用的是什么版本的 Smarty?
    • @Knock 是的,刚刚意识到。如果您在引号中嵌入 var,忘记了您只需要反引号。没有问题。
    • 注意,如果你使用Smarty3,你可以简单地使用{foreach $array as $table}
    猜你喜欢
    • 1970-01-01
    • 2013-06-25
    • 2019-07-17
    • 2012-05-13
    • 1970-01-01
    • 2013-10-02
    • 1970-01-01
    • 1970-01-01
    • 2018-03-24
    相关资源
    最近更新 更多