DOMDocument::getElementsByTagNameNS

(PHP 5)

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

Описание

public DOMNodeList DOMDocument::getElementsByTagNameNS ( string $namespaceURI , string $localName )

Возвращает объект 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

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

Коментарии

<?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
*/
?>
2015-03-19 21:47:25
http://php5.kiev.ua/manual/ru/domdocument.getelementsbytagnamens.html

    Поддержать сайт на родительском проекте КГБ