(PHP 5, PHP 7)
DOMDocument::getElementById — Cherche un élément avec un certain identifiant
Cette fonction est similaire à la fonction DOMDocument::getElementsByTagName mais cherche un élément avec un identifiant donné.
Pour que cette fonction fonctionne, vous devez soit définir les attributs ID avec DOMElement::setIdAttribute ou définir une DTD qui définit un attribut devant être de type ID. Dans le dernier cas, vous devez valider votre document avec DOMDocument::validate ou DOMDocument::$validateOnParse avant d'utiliser cette fonction.
elementId
La valeur de l'identifiant unique pour un élément.
Retourne un DOMElement ou NULL
si l'élément
n'est pas trouvé.
Exemple #1 Exemple avec DOMDocument::getElementById()
L'exemple suivant utilise le fichier book.xml, dont le contenu est :
<?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>PHP Basics</title> <author email="jim.smith@basics.php">Jim Smith</author> <author email="jane.smith@basics.php">Jane Smith</author> <xhtml:blurb><![CDATA[ <p><em>PHP Basics</em> provides an introduction to PHP.</p> ]]></xhtml:blurb> </book> <book id="php-advanced"> <title>PHP Advanced Programming</title> <author email="jon.doe@advanced.php">Jon Doe</author> </book> </books>
<?php
$doc = new DomDocument;
// Nous devons valider notre document avant de nous référer à l'ID
$doc->validateOnParse = true;
$doc->Load('book.xml');
echo "L'élément dont l'ID est 'php-basics' est : " . $doc->getElementById('php-basics')->tagName . "\n";
?>
L'exemple ci-dessus va afficher :
L'élément dont l'ID est 'php-basics' est : chapter