dom_import_simplexml

(PHP 5, PHP 7, PHP 8)

dom_import_simplexml Obtém um objeto DOMElement a partir de um objeto SimpleXMLElement

Descrição

dom_import_simplexml(object $node): DOMAttr|DOMElement

Esta função toma o nó node de um atributo ou de um elemento (uma instância de SimpleXMLElement) e cria um nó DOMAttr ou DOMElement, respectivamente. O novo DOMNode refere-se ao mesmo nó XML subjacente de SimpleXMLElement.

Parâmetros

node

O nó de atributo ou de elemento a importar (uma instância de SimpleXMLElement).

Valor Retornado

O objeto DOMAttr ou DOMElement.

Registro de Alterações

Versão Descrição
8.0.0 Esta função não retorna mais null em caso de falha.

Exemplos

Example #1 Importa SimpleXML para o DOM com dom_import_simplexml()

<?php

$sxe = simplexml_load_string('<livros><livro><titulo>Blá</titulo></livro></livros>');

if ($sxe === false) {
    echo 'Erro ao analisar o documento';
    exit;
}

$dom_sxe = dom_import_simplexml($sxe);
if (!$dom_sxe) {
    echo 'Erro ao converter o XML';
    exit;
}

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

echo $dom->saveXML();

?>

O exemplo acima produzirá:

<?xml version="1.0"?>
<livros><livro><titulo>Blá</titulo></livro></livros>

Example #2 Importa SimpleXML para o DOM e modifica SimpleXML por meio do DOM

Tratamento de erros omitido por questões de brevidade.

<?php

$sxe = simplexml_load_string('<livros><livro><titulo>Blá</titulo></livro></livros>');
$elt = dom_import_simplexml($sxe);
$elt->setAttribute("foo", "bar");
echo $sxe->asXML();

?>

O exemplo acima produzirá:

<?xml version="1.0"?>
<livros foo="bar"><livro><titulo>Blá</titulo></livro></livros>

Veja Também