DOMDocument::getElementById

(PHP 5, PHP 7, PHP 8)

DOMDocument::getElementByIdProcura por um elemento com um determinado ID

Descrição

public DOMDocument::getElementById(string $elementId): ?DOMElement

Esta função é semelhante a DOMDocument::getElementsByTagName mas procura por um elemento com um determinado ID.

Para que esta função funcione, será necessário definir alguns atributos de ID com DOMElement::setIdAttribute ou um DTD que define um atributo como tipo ID. Neste último caso, será necessário validar o documento com DOMDocument::validate ou DOMDocument::$validateOnParse antes de usar esta função.

Parâmetros

elementId

O valor de ID único para um elemento.

Valor Retornado

Retorna o DOMElement ou null se o elemento não for encontrado.

Exemplos

Example #1 DOMDocument::getElementById() Example

Os exemplos a seguir usam um arquivo book.xml que contém o seguinte:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE books [
  <!ELEMENT books   (book+)>
  <!ELEMENT book    (title, author+, xhtml:blurb?)>
  <!ELEMENT title   (#PCDATA)>
  <!ELEMENT blurb   (#PCDATA)>
  <!ELEMENT author  (#PCDATA)>
  <!ATTLIST books   xmlns        CDATA  #IMPLIED>
  <!ATTLIST books   xmlns:xhtml  CDATA  #IMPLIED>
  <!ATTLIST book    id           ID     #IMPLIED>
  <!ATTLIST author  email        CDATA  #IMPLIED>
]>
<?xml-stylesheet type="text/xsl" href="style.xsl"?>
<books xmlns="http://books.php/" xmlns:xhtml="http://www.w3.org/1999/xhtml">
  <book id="php-basics">
    <title>Princípios do PHP</title>
    <author email="[email protected]">Jim Smith</author>
    <author email="[email protected]">Jane Smith</author>
    <xhtml:blurb><![CDATA[
<p><em>Princípios do PHP</em> fornece uma introdução ao PHP.</p>
]]></xhtml:blurb>
  </book>
  <book id="php-advanced">
    <title>Programação PHP Avançada</title>
    <author email="[email protected]">Jon Doe</author>
  </book>
</books>
<?php

$doc = new DomDocument;

// Precisamos validar nosso documento antes de referenciar o ID
$doc->validateOnParse = true;
$doc->Load('book.xml');

echo "The element whose id is 'php-basics' is: " . $doc->getElementById('php-basics')->tagName . "\n";

?>

O exemplo acima produzirá:

The element whose id is 'php-basics' is: book

Veja Também