dom_import_simplexml

(PHP 5, PHP 7, PHP 8)

dom_import_simplexml Transforme un objet SimpleXMLElement en un objet DOMAttr ou DOMElement

Description

dom_import_simplexml(object $node): DOMAttr|DOMElement

Cette fonction prend l'attribut ou l'élément donné node (une instance de SimpleXMLElement) et crée respectivement un nœud DOMAttr ou DOMElement. Le nouveau DOMNode fait référence au même nœud XML sous-jacent que le SimpleXMLElement.

Liste de paramètres

node

L'attribut ou l'élément nœud à importer (une instance de SimpleXMLElement).

Valeurs de retour

Le DOMAttr ou DOMElement.

Historique

Version Description
8.0.0 Cette fonction ne retourne désormais plus null en cas d'échec.

Exemples

Exemple #1 Importation d'un objet SimpleXML dans DOM avec dom_import_simplexml()

<?php

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

if (
$sxe === false) {
echo
'Erreur lors de l\'analyse du document';
exit;
}

$dom_sxe = dom_import_simplexml($sxe);
if (!
$dom_sxe) {
echo
'Erreur lors de la conversion du XML';
exit;
}

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

echo
$dom->saveXML();

?>

L'exemple ci-dessus va afficher :

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

Exemple #2 Importer SimpleXML dans DOM et modifier SimpleXML via DOM

La gestion des erreurs est omise pour des raisons de concision.

<?php

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

?>

L'exemple ci-dessus va afficher :

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

Voir aussi