DOMDocument::saveXML

(PHP 5, PHP 7, PHP 8)

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

Описание

public 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, если возникла ошибка.

Ошибки

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>

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