- simplexml_load_string: documentation ( source)
- dom_import_simplexml: documentation ( source)
<?php
function getDatiTrasmissione() {
$header = '
<DatiTrasmissione>
<IdTrasmittente>
<IdPaese>IT</IdPaese>
<IdCodice>01234567890</IdCodice>
</IdTrasmittente>
<ProgressivoInvio>00001</ProgressivoInvio>
<FormatoTrasmissione>SDI10</FormatoTrasmissione>
<CodiceDestinatario>AAAAAA</CodiceDestinatario>
<ContattiTrasmittente>
<Telefono>060601</Telefono>
<Email>prova@mail.it</Email>
</ContattiTrasmittente>
</DatiTrasmissione>';
return simplexml_load_string($header,'SimpleXMLElement', LIBXML_NOCDATA);
}
$fc = simplexml_load_string('<p:FatturaElettronica versione="1.0" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:p="http://www.fatturapa.gov.it/sdi/fatturapa/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><FatturaElettronicaBody></FatturaElettronicaBody></p:FatturaElettronica> ','SimpleXMLElement', LIBXML_NOCDATA);
/* creo un DOMElements dal SimpleXMLElements */
$domdocument = dom_import_simplexml($fc);
$domdocument->formatOutput = true;
$doc = simplexml_load_string('<FatturaElettronicaHeader></FatturaElettronicaHeader>','SimpleXMLElement', LIBXML_NOCDATA);
$headerdoc = dom_import_simplexml($doc );
$node = dom_import_simplexml(getDatiTrasmissione());
$node = $headerdoc->ownerDocument->importNode($node, TRUE);
// And then append it to the "<root>" node
$headerdoc->appendChild($node);
$dt = $domdocument->ownerDocument->importNode($headerdoc, TRUE);
$domdocument->appendChild($dt);
echo $fc->asXML();