3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?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); $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();
Output for 5.1.0 - 5.6.28, hhvm-3.10.0 - 3.12.0, 7.0.0 - 7.1.0
<?xml version="1.0"?> <p:FatturaElettronica 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" versione="1.0"><FatturaElettronicaBody/><FatturaElettronicaHeader><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></FatturaElettronicaHeader></p:FatturaElettronica>
Output for 5.0.0 - 5.0.5
Notice: Use of undefined constant LIBXML_NOCDATA - assumed 'LIBXML_NOCDATA' in /in/hBjGZ on line 28 Warning: simplexml_load_string() expects at most 2 parameters, 3 given in /in/hBjGZ on line 28 Warning: dom_import_simplexml() expects parameter 1 to be object, null given in /in/hBjGZ on line 30 Notice: Use of undefined constant LIBXML_NOCDATA - assumed 'LIBXML_NOCDATA' in /in/hBjGZ on line 33 Warning: simplexml_load_string() expects at most 2 parameters, 3 given in /in/hBjGZ on line 33 Warning: dom_import_simplexml() expects parameter 1 to be object, null given in /in/hBjGZ on line 35 Notice: Use of undefined constant LIBXML_NOCDATA - assumed 'LIBXML_NOCDATA' in /in/hBjGZ on line 20 Warning: simplexml_load_string() expects at most 2 parameters, 3 given in /in/hBjGZ on line 20 Warning: dom_import_simplexml() expects parameter 1 to be object, null given in /in/hBjGZ on line 37 Notice: Trying to get property of non-object in /in/hBjGZ on line 38 Fatal error: Call to a member function importNode() on a non-object in /in/hBjGZ on line 38
Process exited with code 255.
Output for 4.4.5 - 4.4.9
Fatal error: Call to undefined function: simplexml_load_string() in /in/hBjGZ on line 28
Process exited with code 255.
Output for 4.3.2 - 4.4.4
Fatal error: Call to undefined function: simplexml_load_string() in /in/hBjGZ on line 28
Process exited with code 255.
Output for 4.3.0 - 4.3.1
Fatal error: Call to undefined function: simplexml_load_string() in /in/hBjGZ on line 28