DOMDocument::getElementsByTagNameNS

(PHP 5, PHP 7, PHP 8)

DOMDocument::getElementsByTagNameNS Ищет все элементы с заданным именем в указанном пространстве имён

Описание

public DOMDocument::getElementsByTagNameNS(?string $namespace, string $localName): DOMNodeList

Возвращает объект DOMNodeList со всеми элементами с заданным локальным именем и URI пространства имён.

Список параметров

namespace

URI пространства имён. Специальное значение "*" соответствует всем пространствам имён. Передача null соответствует пустому пространству имён.

localName

Локальное имя искомых элементов. Специальное значение "*" соответствует всем локальным именам.

Возвращаемые значения

Новый объект класса DOMNodeList, содержащий все найденные элементы.

Список изменений

Версия Описание
8.0.3 namespace теперь допускает значение null.

Примеры

Пример #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
'локальное имя: ', $element->localName, ', префикс: ', $element->prefix, "\n";
}
?>

Результат выполнения приведённого примера:

локальное имя: include, префикс: xi
локальное имя: fallback, префикс: xi

Смотрите также