1

我有一个来自 Quickbase 的 XML,我正试图让 foreach 进入 smarty。xml 如下所示。是 的子级,并且有多个记录。在 Smarty 中,我有一个带有 xml 网址的 foreach 括号。我似乎无法出现。没有编译错误。任何帮助表示赞赏。

我的XML:

<qdbapi>
    <action>API_DoQuery</action>
    <errcode>0</errcode>
    <errtext>No error</errtext>
    <dbinfo>
        <name>Part Details</name>
        <desc/>
    </dbinfo>
    <variables></variables>
    <chdbids></chdbids>
    <record>
        <related_bid>48</related_bid>
        <part_note>This is a note 1</part_note>
        <record_id_>24</record_id_>
        <update_id>1417012758913</update_id>
    </record>
    <record>
        <related_bid>48</related_bid>
        <part_note>This is a note 2</part_note>
        <record_id_>24</record_id_>
        <update_id>1417012758913</update_id>
    </record>
</qdbapi>

我的聪明人:

 {$xml = simplexml_load_file('myquickbasexmlurl')}
     {foreach $xml->qdbapi->record as $detail}
         {$detail->record_id_} - {$detail->part_note}
     {/foreach}

谢谢你

4

1 回答 1

0

看起来您正在尝试在 smarty 中执行 php 函数,因此您需要将其放在php 标签中

{php}
    $xml = simplexml_load_file('myquickbasexmlurl')
    foreach ($xml->qdbapi->record as $detail)
    {
        echo $detail->record_id . "-" . $detail->part_note;
    }
{/php}

根据 smarty,这不是最佳实践,但有时您可能需要使用它。否则,您需要使用 xml 创建一个 smarty 变量,然后使用 smarty 处理其余的变量。

于 2014-11-26T15:55:02.537 回答