我正在使用SimpleXML来解析cXML文档。我无法弄清楚如何从文档中最深的元素访问属性。当我解析属性"货币"在下面的xml片段中它并不存在。我发现这只发生在最深层的元素上。有没有办法可以使用SimpleXML解析这个文档?
我试图解析的XML文档的示例部分。
<ItemOut name="ItemOut">
<ItemDetail name="ItemDetail">
<UnitPrice name="UnitPrice">
<Money currency="USD">12.99</Money>
</UnitPrice>
</ItemDetail>
我尝试过使用json编码/解码方式...
$simpleXml=simplexml_load_string($xml);
$json = json_encode($simpleXml);
$xmlArray = json_decode($json,TRUE);
并使用SimpleXML对象...
$xmlObject = new SimpleXMLElement($xml);
这是一张照片
array structure of the parsed document.
答案 0 :(得分:1)
我认为你需要运行
<?php
$xmlObject = new SimpleXMLElement($xml);
$currency = $xmlObject-> ItemDetail -> UnitPrice -> Money -> attributes() -> currency;
?>
这将读取您的货币属性并在您的案例中返回EUR