查询

DOMXPath::query()函数—用法及示例

「 执行XPath查询,并返回结果作为DOMNodeList对象 」


函数名称: DOMXPath::query()

函数描述: 该函数用于执行XPath查询,并返回结果作为DOMNodeList对象。

适用版本: 该函数在PHP 5及以上版本中可用。

语法: DOMNodeList DOMXPath::query ( string $expression [, DOMNode $contextnode [, bool $registerNodeNS = true ]] )

参数说明:

  • expression: 必需。XPath查询表达式。
  • contextnode: 可选。作为查询上下文的DOM节点,默认为整个文档。
  • registerNodeNS: 可选。指定是否将命名空间注册到查询上下文中,默认为true。

返回值: 返回一个DOMNodeList对象,其中包含满足XPath查询表达式的节点列表。如果未找到匹配的节点,则返回一个空的DOMNodeList对象。

示例:

load('books.xml'); // 创建一个DOMXPath对象 $xpath = new DOMXPath($doc); // 对查询结果进行遍历 $nodes = $xpath->query('//book'); foreach ($nodes as $node) { echo $node->nodeName . ": " . $node->getAttribute("id") . "
"; } ?>

输出结果: book: 1 book: 2 book: 3 ...

以上示例演示了如何使用DOMXPath::query()函数执行XPath查询来遍历XML文档中的所有"book"节点。函数首先创建了一个DOMDocument对象并载入XML文件。然后,它创建了一个DOMXPath对象,并使用XPath查询表达式"//book"来选择文档中所有的"book"节点。最后,使用foreach循环遍历查询结果,并输出每个节点的节点名称和"id"属性值。

补充纠错
上一个函数: DOMXPath::evaluate()函数
热门PHP函数
分享链接