gpt4 book ai didi

php - 如何使用 simplexmlelement 在 PHP 中解析 XML?

转载 作者:数据小太阳 更新时间:2023-10-29 02:44:41 27 4
gpt4 key购买 nike

我正在尝试使用 simplexmlelement 在 php 中对 xml 文件进行语法分析。

 <OrderResponse>
<OrderResponseReferences>
<BuyersOrderNumber Preserve="true">100000002</BuyersOrderNumber>
<SuppliersOrderReference Preserve="true">6711637</SuppliersOrderReference>
</OrderResponseReferences>
</OrderResponse>

我正在使用下面的代码访问 BuyersOrderNumber

$local_file_path = "C:/etrade_files/Orders/order_acknowledgements/ORA1707220-05-2015--16-48-31.xml";

$xml = simplexml_load_file($local_file_path);

foreach($xml->children() as $child)
{
$child = $child->getName();

if($child == "OrderResponseReferences")
{
$order_reference = $xml->$child->BuyersOrderNumber;

print_r($order_reference);
}
}

结果:

 SimpleXMLElement Object ( [@attributes] => Array ( [Preserve] => true ) [0] => 100000002 )

我怎样才能得到订单号100000002

此外,此文件有多个订单行,如果有人可以解释我可以用来获取所有必需信息的逻辑,那将对我很有帮助。

 <OrderResponseLine>
<LineNumber>1</LineNumber>
<OrderResponseLineReferences>
<BuyersOrderLineReference Preserve="true">100000002</BuyersOrderLineReference>
</OrderResponseLineReferences>
<Product>
<SuppliersProductCode>108696</SuppliersProductCode>
</Product>
<Quantity>
<Amount>2</Amount>
</Quantity>
<LineTotal>331.18</LineTotal>
</OrderResponseLine>

最佳答案

如果您将对象转换为字符串,它将使用它的值并将其转换:

print_r((string) $order_reference);
// 100000002

我试过你的代码,你做得很好!只需 (string) 就足以让脚本运行。

关于php - 如何使用 simplexmlelement 在 PHP 中解析 XML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30392741/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com