Ищет элемент с заданным id


(PHP 5)

DOMDocument::getElementById Ищет элемент с заданным id

Описание

public DOMElement DOMDocument::getElementById ( string $elementId )

Эта функция является аналогом DOMDocument::getElementsByTagName, но ищет элемент по его id.

Для работы этой функции необходимо либо задать ID атрибуты элементов посредством DOMElement::setIdAttribute, либо понадобится DTD, которая определяет атрибут как имеющий тип ID. В последнем случае перед использованием этой функции потребуется проверять документ на действительность посредством DOMDocument::validate или DOMDocument::$validateOnParse.

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

elementId

Уникальный id элемента.

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

Возвращает объект DOMElement либо NULL, если элемент не найден.

Примеры

Пример #1 DOMDocument::getElementById() Example

Следующие примеры используют файл book.xml, который содержит следующие данные:

<?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;

// Необходимо проверить документ на действительность перед тем как 
// ссылаться на id
$doc->validateOnParse true;
$doc->Load('book.xml');

echo 
"Элемент с id 'php-basics': " $doc->getElementById('php-basics')->tagName "\n";

?>

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

 Элемент с id 'php-basics': book 

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