dom_import_simplexml

(PHP 5, PHP 7, PHP 8)

dom_import_simplexml Transforma un objeto SimpleXMLElement en un objeto DOMAttr o DOMElement

Descripción

dom_import_simplexml(object $node): DOMAttr|DOMElement

Esta función toma el atributo o el elemento dado node (una instancia de SimpleXMLElement) y crea respectivamente un nodo DOMAttr o DOMElement. El nuevo DOMNode hace referencia al mismo nodo XML subyacente que el SimpleXMLElement.

Parámetros

node

El atributo o el elemento nodo a importar (una instancia de SimpleXMLElement).

Valores devueltos

El DOMAttr o DOMElement.

Historial de cambios

Versión Descripción
8.0.0 Esta función ya no devuelve null en caso de error.

Ejemplos

Ejemplo #1 Importación de un objeto SimpleXML en DOM con dom_import_simplexml()

<?php

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

if (
$sxe === false) {
echo
'Error al analizar el documento';
exit;
}

$dom_sxe = dom_import_simplexml($sxe);
if (!
$dom_sxe) {
echo
'Error al convertir el XML';
exit;
}

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

echo
$dom->saveXML();

?>

El resultado del ejemplo sería:

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

Ejemplo #2 Importar SimpleXML en DOM y modificar SimpleXML mediante DOM

La gestión de errores se omite por razones de concisión.

<?php

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

?>

El resultado del ejemplo sería:

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

Ver también