我正在使用PHP和xpath解析来自API调用的XML结果。使用Xpath提取给定节点的文本和属性
$dom = new DOMDocument();
$dom->loadXML($response->getBody());
$xpath = new DOMXPath($dom);
$xpath->registerNamespace("a", "http://www.example.com");
$hrefs = $xpath->query('//a:Books/text()', $dom);
for ($i = 0; $i < $hrefs->length; $i++) {
$arrBookTitle[$i] = $hrefs->item($i)->data;
}
$hrefs = $xpath->query('//a:Books', $dom);
for ($i = 0; $i < $hrefs->length; $i++) {
$arrBookDewey[$i] = $hrefs->item($i)->getAttribute('DeweyDecimal');
}
这样的工作,但有没有一种方法可以从一个查询访问文本和属性?如果是这样的话,一旦查询被执行,你如何得到这些项目?
然后,我会只使用item-> data和item-> getAttribute来提取结果吗? – 2008-09-26 21:02:12