DOMDocument::getElementsByTagNameNS

(PHP 5, PHP 7, PHP 8)

DOMDocument::getElementsByTagNameNS Procura por todos os elementos com uma determinada tag name em um namespace específico

Descrição

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

Retorna um objeto DOMNodeList de todos os elementos com um name local e um URI de namespace específicos.

Parâmetros

namespace

O URI do namespace dos elementos a serem correspondidos. O valor especial "*" corresponde a todos os namespaces. Passar null corresponde ao namespace vazio.

localName

O nome local dos elementos a serem correspondidos. O valor especial "*" corresponde a todos os nomes locais.

Valor Retornado

Um novo objeto DOMNodeList contendo todos os elementos correspondentes.

Registro de Alterações

Versão Descrição
8.0.3 namespace agora pode ser nulo.

Exemplos

Exemplo #1 Obter todos os elementos 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;

// carregue a string XML definida acima
$dom->loadXML($xml);

foreach (
$dom->getElementsByTagNameNS('http://www.w3.org/2001/XInclude', '*') as $element) {
echo
'local name: ', $element->localName, ', prefix: ', $element->prefix, "\n";
}
?>

O exemplo acima produzirá:

local name: include, prefix: xi
local name: fallback, prefix: xi

Veja Também