PHP Unconference Europe 2015

DOMDocumentFragment::appendXML

(PHP 5 >= 5.1.0)

DOMDocumentFragment::appendXMLAppend raw XML data

Description

public bool DOMDocumentFragment::appendXML ( string $data )

Appends raw XML data to a DOMDocumentFragment.

This method is not part of the DOM standard. It was created as a simpler approach for appending an XML DocumentFragment in a DOMDocument.

If you want to stick to the standards, you will have to create a temporary DOMDocument with a dummy root and then loop through the child nodes of the root of your XML data to append them.

Parameters

data

XML to append.

Return Values

Returns TRUE on success or FALSE on failure.

Examples

Example #1 Appending XML data to your document

<?php
$doc 
= new DOMDocument();
$doc->loadXML("<root/>");
$f $doc->createDocumentFragment();
$f->appendXML("<foo>text</foo><bar>text2</bar>");
$doc->documentElement->appendChild($f);
echo 
$doc->saveXML(); 
?>

The above example will output:

<?xml version="1.0"?>
<root><foo>text</foo><bar>text2</bar></root>

add a note add a note

User Contributed Notes 1 note

up
1
lpetrov(AT)axisvista.com
7 years ago
Here is (maybe) a better example:
/**
* Helper function for replacing $node (DOMNode)
* with an XML code (string)
*
* @var DOMNode $node
* @var string $xml
*/
public function replaceNodeXML(&$node,$xml) {
$f = $this->dom->createDocumentFragment();
$f->appendXML($xml);
$node->parentNode->replaceChild($f,$node);
}

Copied from the "PHP5 Dom Based Template" article at:
http://blog.axisvista.com/?p=35
To Top