array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'ru', ), 'this' => array ( 0 => 'domdocument.savexml.php', 1 => 'DOMDocument::saveXML', ), 'up' => array ( 0 => 'class.domdocument.php', 1 => 'DOMDocument', ), 'prev' => array ( 0 => 'domdocument.savehtmlfile.php', 1 => 'DOMDocument::saveHTMLFile', ), 'next' => array ( 0 => 'domdocument.schemavalidate.php', 1 => 'DOMDocument::schemaValidate', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'ru', 'path' => 'reference/dom/domdocument/savexml.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 5, PHP 7, PHP 8)
DOMDocument::saveXML — Сохраняет XML-дерево из внутреннего представления в виде строки
Создаёт XML-документ из представления DOM. Эту функцию обычно вызывают после построения нового DOM-документа, как показано в примере ниже.
node
Этот аргумент используют для вывода только определённого узла без объявления XML, а не всего документа целиком.
options
Дополнительные настройки. Поддерживаются константы LIBXML_NOEMPTYTAG и LIBXML_NOXMLDECL. До версии PHP 8.3.0 поддерживалась только константа LIBXML_NOEMPTYTAG.
Возвращает XML или false
в случае возникновения ошибки.
Версия | Описание |
---|---|
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>