Overview
KB
Technical FAQ
PHP Manual
CSS2 Manual
HTML Manual
JS Guide
JS Reference
PhpDock Manual
Nu-Coder Manual
PhpExpress Manual
PHP Joomla
Development
Learn PHP
 
<DOM FunctionsDom\import_simplexml>
^DOM FunctionsLast updated: Mon, 26 Oct 2026

dom_import_simplexml

(PHP 5, PHP 7, PHP 8)

dom_import_simplexml — Gets a DOMAttr or DOMElement object from a SimpleXMLElement object

Description

function dom_import_simplexml(object $node): DOMAttr|DOMElement

This function takes the given attribute or element node (a SimpleXMLElement instance) and creates a DOMAttr or DOMElement node, respectively. The new DOMNode refers to the same underlying XML node as the SimpleXMLElement.

Parameters

node

The attribute or element node to import (a SimpleXMLElement instance).

Return Values

The DOMAttr or DOMElement.

Changelog

Version Description
8.0.0 This function no longer returns null on failure.

Examples

Example #1 Import SimpleXML into DOM with dom_import_simplexml()

<?php

$sxe = simplexml_load_string('<books><book><title>blah</title></book></books>');

if ($sxe === false) {
    echo 'Error while parsing the document';
    exit;
}

$dom_sxe = dom_import_simplexml($sxe);
if (!$dom_sxe) {
    echo 'Error while converting XML';
    exit;
}

$dom = new DOMDocument('1.0');
$dom_sxe = $dom->importNode($dom_sxe, true);
$dom_sxe = $dom->appendChild($dom_sxe);

echo $dom->saveXML();

?>

The above example will output:

<?xml version="1.0"?>
<books><book><title>blah</title></book></books>

Example #2 Import SimpleXML into DOM and modify SimpleXML through DOM

Error handling omitted for brevity.

<?php

$sxe = simplexml_load_string('<books><book><title>blah</title></book></books>');
$elt = dom_import_simplexml($sxe);
$elt->setAttribute("foo", "bar");
echo $sxe->asXML();

?>

The above example will output:

<?xml version="1.0"?>
<books foo="bar"><book><title>blah</title></book></books>

See Also


<DOM FunctionsDom\import_simplexml>
^DOM FunctionsLast updated: Mon, 26 Oct 2026