如何在Twig(Symfony)中访问特定节点的XML-Attribute?

时间:2013-09-28 18:36:12

标签: symfony twig

我有一个像这样的xml:

<item>
  <domain>
    <currentPrice currency="EUR">17.9</currentPrice>
  </domain>
</item>

我可以使用

在Twig中渲染17.9的值
item.domain.currentPrice

但是如何访问属性“currency”来呈现它呢?

item.domain.currentPrice['currency']

无效。然后我得到了:

Key "curreny" in object (with ArrayAccess) of type "SimpleXMLElement" does not exist

谁能帮帮我?

1 个答案:

答案 0 :(得分:2)

您可以通过attributes()方法访问货币属性值:

{{ xml.domain.currentPrice.0.attributes.currency }}

就像你在php中那样做:

$xml->domain->currentPrice[0]->attributes()->currency;

实际上twig从twig-code到php-code进行了这种转换,最终执行了php-code。

您可以仔细检查SimpleXMLElement的API,以了解可以使用的方法和属性。