<?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
<cd country="USA">
<disk>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<price>10.90</price>
</disk>
<disk>
<title>Hide your heart</title>
<artist>Bonnie Tyler</artist>
<price>9.90</price>
</disk>
<disk>
<title>KDGFJDLF</title>
<artist>mnxc lxck</artist>
<price>7.20</price>
</disk>
</cd>
<cd country="USA">
<disk>
<title>Greatest Hits</title>
<artist>Dolly Parton</artist>
<price>12.90</price>
</disk>
<disk>
<title>ASD</title>
<artist>abc def</artist>
<price>12.30</price>
</disk>
</cd>
</catalog>
我需要得到每個CD(價格)的最後一個子和2最後一個孩子的XML。
所以第一CD的結果是: 最後一個孩子(磁盤3):7.20 & 2日最後一個孩子(磁盤2):9.90
第二CD的結果是: 最後一個孩子(磁盤2):12.30 & 2日最後一個孩子(磁盤1):12.90
只需要價格
我能得到CD,但IAM無知讓每一個CD的價格之一的價格(如果新一些被添加)。
<?php
$xml = new DOMDocument();
$xml->load(realpath('cd.xml'));
$xpath = new DOMXPath($xml);
$asd = $xml ->getElementsByTagName("cd");
$qwe = $xpath ->query('//catalog/cd');
foreach ($qwe as $qwe) {
$lastPrice = $xpath->query('//catalog/cd /disk[last()]/price')->item(0)->nodeValue;
$secondLastPrice = $xPath->query('//catalog/cd /disk[last()-1]/price')->item(0)->nodeValue;
}
?>
我如何繼續從$ qwe。得到每張CD的最後價格和第二最後價格?
作品,直到'cd'只放置'disk#'標籤 –
如果目錄包含不同的內容,則可能是xml設計問題。儘管如此,每個磁盤在foreach中應該有相同的標記 – Philipp
($ qwe爲$ qwe)循環我爲每個循環打印了最後一個價格,但是如何獲得第二個最後的價格現在哈哈。 $ lastP = $ xPath-> query('// customerInfos/customer/meter/meterDate [last()]'); \t foreach($ lastP as $ n){ $ lastPrice = $ n-> nodeValue; } – Marvelo