Return a well-formed XML string based on SimpleXML element

# SimpleXMLElement::asXML

(PHP 5, PHP 7, PHP 8)

SimpleXMLElement::asXML — Return a well-formed XML string based on SimpleXML element

### 说明

public function SimpleXMLElement::asXML(?string `$filename` = `null`): string|bool

The `asXML` method formats the parent object's data in XML version 1.0.

### 参数

`filename`

  If a string value is provided, the function writes the data to the file rather than returning it.

### 返回值

If the `filename` isn't specified, this function returns a string on success and `false` on error. If the parameter is specified, it returns `true` if the file was written successfully and `false` otherwise.

### 更新日志

版本 | 说明
--- | ---
8.0.0 | `filename` is nullable now.

### 示例

示例 #1 Get XML

    <?php
    $string = <<<XML
    <a>
     <b>
      <c>text</c>
      <c>stuff</c>
     </b>
     <d>
      <c>code</c>
     </d>
    </a>
    XML;

    $xml = new SimpleXMLElement($string);

    echo $xml->asXML();

    ?>

以上示例会输出：

    <?xml version="1.0"?>
    <a>
     <b>
      <c>text</c>
      <c>stuff</c>
     </b>
     <d>
      <c>code</c>
     </d>
    </a>

`asXML` also works on Xpath results:

示例 #2 Using asXML() on SimpleXMLElement::xpath() results

    <?php
    $string = <<<XML
    <a>
     <b>
      <c>text</c>
      <c>stuff</c>
     </b>
     <d>
      <c>code</c>
     </d>
    </a>
    XML;

    $xml = new SimpleXMLElement($string);

    /* Search for <a><b><c> */
    $result = $xml->xpath('/a/b/c');

    foreach ($result as $node) {
        echo $node->asXML();
    }
    ?>

以上示例会输出：

    <c>text</c><c>stuff</c>

### 参见

- SimpleXMLElement::__toString() - Returns the string content
- Basic SimpleXML usage

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