Сохраняет XML-дерево из внутреннего представления в виде строки

# DOMDocument::saveXML

(PHP 5, PHP 7, PHP 8)

DOMDocument::saveXML — Сохраняет XML-дерево из внутреннего представления в виде строки

### Описание

public function DOMDocument::saveXML(?DOMNode `$node` = `null`, int `$options` = 0): string|false

Метод создаёт XML-документ из DOM-представления. Эту функцию часто вызывают после построения нового DOM-документа, как показывает пример на этой странице.

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

`node`

  Аргумент передают, чтобы вывести только конкретный узел без XML-объявления, а не всего документа.

`options`
  Дополнительные параметры. Метод поддерживает параметры `LIBXML_NOEMPTYTAG` и `LIBXML_NOXMLDECL`. До PHP 8.3.0 метод поддерживал только параметр `LIBXML_NOEMPTYTAG`.

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

Метод возвращает XML-строку или `false`, если возникла ошибка.

### Ошибки

Может выбросить исключение DOMException со следующими кодами ошибок:

`DOM_WRONG_DOCUMENT_ERR`

  Ошибка возникает, если узел `node` принадлежит другому

### Список изменений

Версия | Описание
--- | ---
8.3.0 | Параметры метода теперь поддерживают константу LIBXML_NOXMLDECL.

### Примеры

Пример #1 Пример сохранения DOM-дерева в виде строки

    <?php

    $doc = new DOMDocument('1.0');
    // мы хотим красивый вывод
    $doc->formatOutput = true;

    $root = $doc->createElement('book');
    $root = $doc->appendChild($root);

    $title = $doc->createElement('title');
    $title = $root->appendChild($title);

    $text = $doc->createTextNode('Заголовок');
    $text = $title->appendChild($text);

    echo "Сохранение всего документа:\n";
    echo $doc->saveXML() . "\n";

    echo "Сохранение только заголовка:\n";
    echo $doc->saveXML($title);

    ?>

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

    Сохранение всего документа:
    <?xml version="1.0"?>
    <book>
      <title>Заголовок</title>
    </book>

    Сохранение только заголовка:
    <title>Заголовок</title>

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

- DOMDocument::save() - Сохраняет XML-дерево из внутреннего представления в файл
- DOMDocument::load() - Загрузка XML из файла
- DOMDocument::loadXML() - Загрузка XML из строки

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