Dumps the internal XML tree back into a string

# DOMDocument::saveXML

(PHP 5, PHP 7, PHP 8)

DOMDocument::saveXML — Dumps the internal XML tree back into a string

### 说明

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

Creates an XML document from the DOM representation. This function is usually called after building a new dom document from scratch as in the example below.

### 参数

`node`

  Use this parameter to output only a specific node without XML declaration rather than the entire document.

`options`
  Additional Options. The `LIBXML_NOEMPTYTAG` and `LIBXML_NOXMLDECL` options are supported. Prior to PHP 8.3.0, only the `LIBXML_NOEMPTYTAG` option is supported.

### 返回值

Returns the XML, or `false` if an error occurred.

### 错误／异常

May throw a DOMException with the following error codes:

`DOM_WRONG_DOCUMENT_ERR`

  Raised if `node` is from another document.

### 更新日志

版本 | 说明
--- | ---
8.3.0 | LIBXML_NOXMLDECL is now supported.

### 示例

示例 #1 Saving a DOM tree into a string

    <?php

    $doc = new DOMDocument('1.0');
    // we want a nice output
    $doc->formatOutput = true;

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

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

    $text = $doc->createTextNode('This is the title');
    $text = $title->appendChild($text);

    echo "Saving all the document:\n";
    echo $doc->saveXML() . "\n";

    echo "Saving only the title part:\n";
    echo $doc->saveXML($title);

    ?>

以上示例会输出：

    Saving all the document:
    <?xml version="1.0"?>
    <book>
      <title>This is the title</title>
    </book>

    Saving only the title part:
    <title>This is the title</title>

### 参见

- DOMDocument::save() - Dumps the internal XML tree back into a file
- DOMDocument::load() - Load XML from a file
- DOMDocument::loadXML() - Load XML from a string

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