(PHP 5)
DOMDocument::getElementsByTagNameNS — Ищет элементы с заданным именем в определенном пространстве имен
Возвращает объект DOMNodeList со всеми элементами с заданным локальным именем и URI пространства имен.
namespaceURI
URI пространства имен. Специальное значение * означает, что поиск будет произведен по всем пространствам имен.
localName
Локальное имя искомых элементов. Специальное значение * означает, что поиск будет произведен по всем локальным именам.
Новый объект класса DOMNodeList содержащий все найденные элементы.
Пример #1 Получение всех XInclude элементов
<?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;
// загрузка XML строки, определенной выше
$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