php8.5
Home/ Manual/ simplexml / simplexmlelement/ SimpleXMLElement::asXML

SimpleXMLElement::asXML

PHP function Edit on GitHub ✎

(PHP 5, PHP 7, PHP 8)

Return a well-formed XML string based on SimpleXML element

Description

SimpleXMLElement::asXML(string|null $filename = null): string|bool

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

Parameters

filename

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

Return Values

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.

Changelog

VersionDescription
8.0.0filename is nullable now.

Examples

Get XML

php
<?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();

?>

The above example will output:

output
<?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:

Using asXML() on SimpleXMLElement::xpath results

php
<?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();
}
?>

The above example will output:

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

See Also

Source: reference/simplexml/simplexmlelement/asXML.xml · from the official PHP manual (php/doc-en)