dom_import_simplexml

(PHP 5, PHP 7, PHP 8)

dom_import_simplexml Ermittelt ein DOMAttr- oder DOMElement-Objekt aus einem SimpleXMLElement-Objekt

Beschreibung

dom_import_simplexml(object $node): DOMAttr|DOMElement

Diese Funktion verwendet das angegebene Attribut oder Element node (eine SimpleXMLElement-Instanz) und erstellt einen DOMAttr- bzw. DOMElement-Knoten. Der neue DOMNode verweist auf denselben zugrundeliegenden XML-Knoten wie das SimpleXMLElement.

Parameter-Liste

node

Der zu importierende Attribut- oder Elementknoten (eine Instanz von SimpleXMLElement).

Rückgabewerte

Das DOMAttr oder DOMElement.

Changelog

Version Beschreibung
8.0.0 Diese Funktion gibt im Fehlerfall nicht mehr null zurück.

Beispiele

Beispiel #1 SimpleXML mit der Funktion dom_import_simplexml() in DOM importieren

<?php

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

if (
$sxe === false) {
echo
'Fehler beim Parsen des Dokumentes';
exit;
}

$dom_sxe = dom_import_simplexml($sxe);
if (!
$dom_sxe) {
echo
'Fehler bei der Konvertierung zu XML';
exit;
}

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

echo
$dom->saveXML();

?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

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

Beispiel #2 SimpleXML in DOM importieren und SimpleXML über DOM modifizieren

Die Fehlerbehandlung wurde der Kürze halber weggelassen.

<?php

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

?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

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

Siehe auch