如何使用循环读取PHP中的XML文件的文档行?
问题描述:
如何使用循环读取PHP中的XML文件的文档行? 让我给你举个例子, 这是XML标记如何使用循环读取PHP中的XML文件的文档行?
<?xml version="1.0" encoding="utf-8"?>
<GRPO>
<Goods>
<CardCode>V10000</CardCode>
<DocDueDate>07/11/2016</DocDueDate>
<GoodsLines>
<Line>
<ItemNo>A00003</ItemNo>
<Quantity>4</Quantity>
<UnitPrice>4000</UnitPrice>
</Line>
<Line>
<ItemNo>A00004</ItemNo>
<Quantity>5</Quantity>
<UnitPrice>5000</UnitPrice>
</Line>
</GoodsLines>
</Goods>
</GRPO>
的读取XML文件
<?php
$xml=simplexml_load_file("GRPO.xml");
foreach($xml->children() as $Line)
{
echo"$Line->ItemNo";
echo"$Line->Quantity";
echo"$Line->UnitPrice";
}
?>
这里的问题是不显示任何数据的PHP代码。 我可以在我的代码中做什么以便通过使用循环打印出行的值?
请任何人都可以帮助我。
答
您没有访问XML的正确级别。 children()
方法仅访问直接文档的子项,因此您只是遍历Goods节点。
你的循环需要看起来像这样:
foreach ($xml->Goods->GoodsLines->Line as $Line)
{
echo $Line->ItemNo;
echo $Line->Quantity;
echo $Line->UnitPrice;
}
谢谢你这么多iainn,这是正确的。 –