La méthode "addChild" de SimpleXMLElement semble être le bon choix, mais elle ne prend apparemment que des chaînes représentant la variable du nouvel enfant.Existe-t-il un moyen d'ajouter un PHP SimpleXMLElement à un autre SimpleXMLElement?
Il existe la notation objet-ish pour référencer des nœuds de l'arbre et les définir, par ex. $ simpleXMLNode-> child = value, mais cela ne semble fonctionner que pour les valeurs texte/numériques simples. Si je effectuez les opérations suivantes:
$s = new SimpleXMLElement('<root/>');
$t = new SimpleXMLElement('<child/>');
$s->a = $t;
echo $s->asXML()
Je reçois:
<?xml version="1.0"?>
<root><a></a></root>
quand j'espérais:
<?xml version="1.0"?>
<root><a><child/></a></root>
Je pensais que la conversion $ t en une chaîne, puis l'ajouter (après suppression de la déclaration XML):
$s->a = substr($t->asXML(),22)
Mais cela donne:
<?xml version="1.0"?>
<root><a><child/></a></root>
Encore une fois, pas ce que j'espérais.
Existe-t-il une manière typique d'accomplir ce genre de chose avec SimpleXML?
Copie possible de [PHP - SimpleXML - AddChild avec un autre SimpleXMLElement] (http://stackoverflow.com/questions/4778865/php-simplexml-addchild-with-another-simplexmlelement) – Ben