(PHP 5 >= 5.2.0, PHP 7)
Runs XPath query on XML data
public array SimpleXMLElement::xpath ( string $path )
The xpath method searches the SimpleXML node for children matching the XPath path.
Parameters:
path
An XPath path
Returns:
Returns an array of SimpleXMLElement objects or FALSE in case of an error.
Examples:
Xpath
<?php
$string = <<<XML
<a>
<b>
<c>text</c>
<c>stuff</c>
</b>
<d>
<c>code</c>
</d>
</a>
XML;
$xml = new SimpleXMLElement($string);
/* Search for <a><b><c> */
$result = $xml->xpath('/a/b/c');
while(list( , $node) = each($result)) {
echo '/a/b/c: ',$node,"\n";
}
/* Relative paths also work... */
$result = $xml->xpath('b/c');
while(list( , $node) = each($result)) {
echo 'b/c: ',$node,"\n";
}
?>
The above example will output:
/a/b/c: text /a/b/c: stuff b/c: text b/c: stuff
Notice that the two results are equal.
See also:
SimpleXMLElement::registerXPathNamespace() -
SimpleXMLElement::getDocNamespaces() -
Please login to continue.