Ищет элемент с определённым идентификатором

# DOMDocument::getElementById

(PHP 5, PHP 7, PHP 8)

DOMDocument::getElementById — Ищет элемент с определённым идентификатором

### Описание

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

Эта функция похожа на DOMDocument::getElementsByTagName, но ищет элемент с заданным идентификатором.

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

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

`elementId`

  Уникальный значение идентификатора элемента.

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

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

### Примеры

Пример #1 Пример использования DOMDocument::getElementById()

Следующие примеры используют файл 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;

    // Нужно проверить документ перед тем как ссылаться по идентификатору
    $doc->validateOnParse = true;
    $doc->load('examples/book.xml');

    echo "Элемент с идентификатором 'php-basics': " . $doc->getElementById('php-basics')->tagName . "\n";

    ?>

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

    Элемент с идентификатором 'php-basics': book

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

- DOMDocument::getElementsByTagName() - Ищет все элементы с заданным локальным именем

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open