如何解析这个 XML 数据..?

Posted

技术标签:

【中文标题】如何解析这个 XML 数据..?【英文标题】:How to parse this XML data..? 【发布时间】:2020-11-28 23:45:38 【问题描述】:

我正在处理this XML 数据,并且我正在尝试遍历 OrderArray 元素中的 Order 元素。

我可以使用这个来定位元素:

$ebay_orders = $DOM->getElementsByTagName("Order");

这会返回数组中Orders的数量,例如:

DOMNodeList Object ( [length] => 2 )

我已经有一段时间没有像这样使用 XML,我正在努力记住如何进入这些订单元素并提取单个元素值(即 OrderID、OrderStatus 等)

任何有关这方面的信息将不胜感激。谢谢!

【问题讨论】:

也许这些解决方案将有助于解析 xml 客户端 .... ***.com/questions/7949752/… 【参考方案1】:

php XML 中,我们可以使用节点值来获取特定元素。例如,我试图在以下 xml 中获取第一个订单的 OrderID。您可以从托管 url 或示例文件中获取 xml 数据。它取决于您的要求。出于演示目的,我将使用托管文件。代码可以是:

$file = "sample.xml";
$url = "https://www.tekbuff.com/ebay-apps/logs/GetOrdersResponse_1596940374.xml";

$xml = simplexml_load_file($url); /* Replace $url with $file */

echo $xml->OrderArray->Order[0]->OrderID; 

这里$xml->OrderArray->Order[0]->OrderID; 将检索 OrderID,如 19-05533-xxxx 的第一个键。同样,您可以检索任意数量的节点值。

【讨论】:

好吧,我实际上不是从文件加载的。那只是一个样本。我在一个脚本中工作,该脚本通过 API 拉回这些数据,因此 XML 字符串可以直接使用,而不是加载文件。有没有类似的东西? 啊,simplexml_load_string。我会玩这个,然后我会接受你的回答。谢谢。 当然。如果您将 xml 存储在文件或变量中,我已经更新了答案

以上是关于如何解析这个 XML 数据..?的主要内容,如果未能解决你的问题,请参考以下文章

XML数据如何进行解析呢,方式有哪些?

j2me:如何将字节数组解析为 xml,然后从该 XML 读取和显示特定数据

flex中如何解析xml文件生成sql语句

JavaScript解析excel表格,转化成XML格式或者Json格式的数据。

如何解析 xml 并从 xml 字符串中获取数据?

如何解析xml数据?