DOMDocument::getElementsByTagNameNS()
(PHP 5, PHP 7)
Searches for all elements with given tag name in specified namespace
说明
public DOMDocument::getElementsByTagNameNS(string $namespaceURI,string $localName): DOMNodeList
Returns a DOMNodeList of all elements with a given local name and a namespace URI.
参数
- $namespaceURI
The namespace URI of the elements to match on. The special value*matches all namespaces.
- $localName
The local name of the elements to match on. The special value*matches all local names.
返回值
A new DOMNodeList object containing all the matched elements.
范例
Example #1 Get all the XInclude elements
<?php $xml = <<<EOD <?xml version="1.0" ?> <chapter xmlns:xi="http://www.w3.org/2001/XInclude"> <title>Books of the other guy..</title> <para> <xi:include href="book.xml"> <xi:fallback> <error>xinclude: book.xml not found</error> </xi:fallback> </xi:include> <include> This is another namespace </include> </para> </chapter> EOD; $dom = new DOMDocument; // load the XML string defined above $dom->loadXML($xml); foreach ($dom->getElementsByTagNameNS('http://www.w3.org/2001/XInclude', '*') as $element) { echo 'local name: ', $element->localName, ', prefix: ', $element->prefix, "\n"; } ?>
以上例程会输出:
local name: include, prefix: xi local name: fallback, prefix: xi
参见
- DOMDocument::getElementsByTagName() Searches for all elements with given local tag name
<?php ini_set("display_errors","on"); error_reporting(-1); $doc="<?xml version='1.0' encoding='WINDOWS-1251'?> <htm:body xmlns:htm='w3.org'> <span>Text</span> <htm:img htm:src='imgSrc'/> </htm:body>"; $dom = new DOMDocument('1.0','WINDOWS-1251'); $dom->preserveWhiteSpace=false; $dom->loadXML($doc); $domList=$dom->getElementsByTagNameNS('*','*');//all namespaces, all local names echo "Количество элементов. The number of elements: ".$domList->length."<br />";// 2 (not 3) for ($i=0; $i<$domList->length; $i++) {echo "Элемент $i. The element $i: ".$domList->item($i)->tagName."<br />"; } /* Tested in PHP 5.2.9-2 and 5.2.17 The above example will output: Количество элементов. The number of elements: 2 Элемент 0. The element 0: htm:body Элемент 1. The element 1: htm:img Вывод. Не найден элемент span Conclusion. Not found span element */ ?>