【问题标题】:smarty tpl foreachsmarty tpl foreach
【发布时间】:2012-07-04 16:34:33
【问题描述】:

我使用 smarty tpl。

现在我有一个 php 代码,我想在 tpl 中使用它:

Tis 是数组的输出。

 stdClass Object
(
[Status] => success
[Time] => 2011-01-01 12:00:00
[IP] => 12.34.56.789
[Count] => 1
[Filter] => stdClass Object
    (
        [Sort] => ProductCode
        [Order] => DESC
        [Search] => 
        [ProductCode] => P001
        [ProductType] => 
    )

[Result] => stdClass Object
    (
        [Products] => Array
            (
                [0] => stdClass Object
                    (
                        [Identifier] => 1
                        [ProductCode] => test
                        [ProductName] => test
                    )

            )

    )

这是有效的 php 代码:

   foreach ($product_list->Result->Products as $product) {
        echo $product->ProductName;
}

我使用以下 tpl 代码,但这不起作用

           //in php
    $smarty->assign("data", $product_list); 

     //in tpl file
    {foreach item=item from=$data}

<tr>
    <td align="center">{$item.Result->Products->ProductName}</td>
    <td align="center"></td>
    <td align="center"></td>
    <td align="center"><a href="" class="usuallink">{$header.order}</a></td>
</tr>
{/foreach}

现在有人可以解决这个问题吗?

【问题讨论】:

    标签: php foreach smarty


    【解决方案1】:

    来自 php 的工作代码如下所示:

    {foreach from=$data->Result->Products item=item}
        {$item->ProductName}
    {/foreach}
    

    在 smarty3 中它看起来更像纯 php:

    {foreach $data->Result->Products as $item}
        {$item->ProductName}
    {/foreach}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-06-22
      • 2015-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多