我有以下XML文檔:Xpath的循環查詢
<shop id="123" name="xxx">
<product id="123456">
<name>Book</name>
<price>9.99</price
</product>
<product id="789012">
<name>Perfume</name>
<price>12.99</price
</product>
<product id="345678">
<name>T-Shirt</name>
<price>9.99</price
</product>
</shop>
<shop id="456" name="yyy">
<product id="123456">
<name>Book</name>
<price>9.99</price
</product>
</shop>
我有以下的循環來收集每個產品的信息:
$data_feed = 'www.mydomain.com/xml/compression/gzip/';
$xml = simplexml_load_file("compress.zlib://$data_feed");
foreach ($xml->xpath('//product') as $row) {
$id = $row["id"]; // product id eg. "123456"
$name = $row->name;
$price = $row->price;
// update database etc.
}
不過,我也希望收集的信息每個產品的母店(「id」和「name」)。
我可以很容易地改變我的XPath從店鋪開始,而不是產品,但我不能確定的最有效的方法,然後構建我的foreach內的附加循環以各縮進產品
有意義嗎?
我會同意這種看法。無論如何,如果您需要迭代每個節點,我都不會看到XPath爲您提供了什麼。 –