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>

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