我如何从这个 XML 文件中获取所有“座位”子节点及其属性?
<seatmap id="1">
<seat row="A" seatnum="01" available="1" />
<seat row="A" seatnum="02" available="1" />
<seat row="A" seatnum="03" available="1" />
<seat row="A" seatnum="04" available="1" />
<seat row="A" seatnum="05" available="1" />
</seatmap>
我有不同的座位图,所以我想通过 ID 查询来获取它们 然后将所有“座位”节点及其属性分配给变量。
到目前为止,我一直在使用 DOM 方法,但也许 simpleXML 或 XPath 会更容易,因为它确实 当您从 DOMDocumet、DOMElement、DOMNode 向下钻取时会感到困惑。
任何帮助都会很棒,干杯!
最佳答案
$XML = <<<XML
<parent>
<seatmap id="1">
<seat row="A" seatnum="01" available="1" />
<seat row="A" seatnum="02" available="1" />
<seat row="A" seatnum="03" available="1" />
<seat row="A" seatnum="04" available="1" />
<seat row="A" seatnum="05" available="1" />
</seatmap>
</parent>
XML;
$xml_nodes = new SimpleXMLElement($XML);
$nodes = $xml_nodes->xpath('//seatmap[@id = "1"]/seat'); // Replace the ID value with whatever seatmap id you're trying to access
foreach($nodes as $seat)
{
// You can then access: $seat['row'], $seat['seatnum'], $seat['available']
}
关于PHP、XML - 获取子节点及其属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4914803/