dom документ

DOM (Document Object Model)

Основные положения DOM:

  • Интерфейс, позволяющий программам управлять содержимым документов XML, а также изменять их структуру.
  • Представляет XML-документ в виде дерева узлов.
  • Существует спецификация DOM (W3C).

В начале мы создаем объект экземпляр класса DOMDocument. В конструктор DOMDocumenta можно передать 2 параметра: версию xml и кодировку (нужны только при создании нового документа):

$dom = new DOMDocument();
$dom = new DOMDocument("1.0","utf-8");

DOM — это самый мощный из всех инструментов. С его помощью можно создавать, читать, изменять документы. Но он и самый ресурсоемкий. Когда мы отдаем на обработку DOM на xml-файл, тот зачитывает его весь целиком, строит в памяти дерево.

С точки зрения DOM весь документ — это объект. Поэтому все, что внутри xml-документа — это узлы.

Узлы XML документа

Допустип, есть xml-документ:

<catalog>
<book>
<author>Хьюз</author>
<title>PHP</title>
</book>
<book>
<author>Григин</author>
<title>Справочник</title>
</book>
</catalog>

Тогда DOM представит его в виде такого дерева:

dom документ

DOM загрузил все дерево сразу. И мы можем гулять по дереву вверх, вниз, влево, вправо. Т.к. мы передвигаемся, как правило, вслепую. Узлов много. Они делятся по типам.

Типы узлов документа

У каждого узла есть свой тип и свой код.

dom документ

Все эти узлы состоят в родственных между собой отношениях.

Связи между узлами

Допустим, у нас есть код:

<book>
<title>PHP</title>
<author>Zeev Suraski</author>
</book>

Этот кусок кода можно представить в виде дерева:

дом документ

Мы видим связи между родителем-ребенком. Как правило, нам может понадобиться либо первый ребенок, либо последний. Для этого есть свойства: first child, last child.




Добавить комментарий

Ваш e-mail не будет опубликован.