<?php
$dati="<PDresponse>
<isStatusOK>true</isStatusOK>
<status>0</status>
<payLoad><?xml version="1.0"?>
<ADR_A19 xmlns="urn:hl7-org:v2xml">
<MSH>
<MSH.1>|</MSH.1>
<MSH.2>^~\&amp;</MSH.2>
<MSH.3>
<HD.1>ANAGRER</HD.1>
<HD.2>SAIARER 6.106</HD.2>
</MSH.3>
<MSH.4>
<HD.1>080000</HD.1>
</MSH.4>
<MSH.7>
<TS.1>20140411131354</TS.1>
</MSH.7>
<MSH.9>
<MSG.1>ADR</MSG.1>
<MSG.2>A19</MSG.2>
<MSG.3>ADR_A19</MSG.3>
</MSH.9>
<MSH.10>08000015924236965739</MSH.10>
<MSH.11>
<PT.1>P</PT.1>
</MSH.11>
<MSH.12>
<VID.1>2.5</VID.1>
</MSH.12>
</MSH>
<MSA>
<MSA.1>AA</MSA.1>
<MSA.2>RERSIMIRER20140411131354</MSA.2>
</MSA>
<QAK>
<QAK.4>61</QAK.4>
<QAK.5>30</QAK.5>
<QAK.6>31</QAK.6>
</QAK>
<QRD>
<QRD.1>
<TS.1>20140411131354</TS.1>
</QRD.1>
<QRD.2>R</QRD.2>
<QRD.3>I</QRD.3>
<QRD.4>SIMIRER20140411131354</QRD.4>
<QRD.7>
<CQ.1>30</CQ.1>
<CQ.2>
<CE.1>RD</CE.1>
</CQ.2>
</QRD.7>
<QRD.8>
<XCN.1>SLSPLA77C08L093A</XCN.1>
<XCN.2>
<FN.1>Paolo</FN.1>
</XCN.2>
<XCN.3>Selis</XCN.3>
</QRD.8>
<QRD.9>
<CE.1>DEM</CE.1>
</QRD.9>
<QRD.10>
<CE.1/>
</QRD.10>
</QRD>
<QRF>
<QRF.1>RER</QRF.1>
<QRF.5>SELIS</QRF.5>
<QRF.8>LST</QRF.8>
</QRF>
<ADR_A19.QUERY_RESPONSE>
<PID>
<PID.3>
<CX.5>NNITA</CX.5>
</PID.3>
<PID.3>
<CX.1>4107722</CX.1>
<CX.4>
<HD.1>RER</HD.1>
</CX.4>
<CX.5>RRI</CX.5>
</PID.3>
<PID.3>
<CX.5>SS</CX.5>
<CX.7>19981020</CX.7>
</PID.3>
<PID.3>
<CX.4>
<HD.1>500001</HD.1>
</CX.4>
<CX.5>HC</CX.5>
</PID.3>
<PID.5>
<XPN.1>
<FN.1>SELIS</FN.1>
</XPN.1>
<XPN.2>LUCIANO</XPN.2>
</PID.5>
<PID.7>
<TS.1>19401216</TS.1>
</PID.7>
<PID.8>M</PID.8>
<PID.11>
<XAD.7>N</XAD.7>
</PID.11>
<PID.11>
<XAD.7>D</XAD.7>
</PID.11>
<PID.11>
<XAD.7>L</XAD.7>
<XAD.13>
<TS.1>19981020</TS.1>
</XAD.13>
</PID.11>
<PID.11>
<XAD.7>H</XAD.7>
<XAD.13>
<TS.1>19401216</TS.1>
</XAD.13>
</PID.11>
<PID.26>
<CE.4>100</CE.4>
<CE.5>ITALIA</CE.5>
<CE.6>ISTAT</CE.6>
</PID.26>
<PID.30>N</PID.30>
</PID>
<ROL>
<ROL.2>UC</ROL.2>
<ROL.3>
<CE.1>PP</CE.1>
<CE.2>primary care provider</CE.2>
</ROL.3>
<ROL.4>
<XCN.13>ASLR</XCN.13>
</ROL.4>
</ROL>
<ROL>
<ROL.2>UC</ROL.2>
<ROL.3>
<CE.1>PP</CE.1>
<CE.2>primary care provider</CE.2>
</ROL.3>
<ROL.4>
<XCN.13>ASLA</XCN.13>
</ROL.4>
</ROL>
<NK1>
<NK1.1>1</NK1.1>
<NK1.2>
<XPN.1>
<FN.1>SELIS</FN.1>
</XPN.1>
<XPN.2>LUCIANO</XPN.2>
</NK1.2>
<NK1.3>
<CE.1>SEL</CE.1>
</NK1.3>
<NK1.8>19401216</NK1.8>
<NK1.22>
<CE.1>A</CE.1>
<CE.2>Consenso Assente</CE.2>
</NK1.22>
</NK1>
<NK1>
<NK1.1>2</NK1.1>
<NK1.2>
<XPN.1>
<FN.1>SELIS</FN.1>
</XPN.1>
<XPN.2>LUCIANO</XPN.2>
</NK1.2>
<NK1.3>
<CE.1>SEL</CE.1>
</NK1.3>
<NK1.7>
<CE.1>A</CE.1>
<CE.2>Diritto Assistenza</CE.2>
</NK1.7>
<NK1.8>19401216</NK1.8>
</NK1>
</ADR_A19.QUERY_RESPONSE>
<ADR_A19.QUERY_RESPONSE>
<PID>
<PID.3>
<CX.1>SLSMRA01H54G337R</CX.1>
<CX.5>NNITA</CX.5>
</PID.3>
<PID.3>
<CX.1>4303417</CX.1>
<CX.4>
<HD.1>RER</HD.1>
</CX.4>
<CX.5>RRI</CX.5>
</PID.3>
<PID.3>
<CX.5>SS</CX.5>
<CX.7>20030503</CX.7>
</PID.3>
<PID.3>
<CX.4>
<HD.1>500001</HD.1>
</CX.4>
<CX.5>HC</CX.5>
</PID.3>
<PID.5>
<XPN.1>
<FN.1>SELIS</FN.1>
</XPN.1>
<XPN.2>MARA</XPN.2>
</PID.5>
<PID.7>
<TS.1>20010614</TS.1>
</PID.7>
<PID.8>F</PID.8>
<PID.11>
<XAD.3>PARMA</XAD.3>
<XAD.4>PR</XAD.4>
<XAD.7>N</XAD.7>
<XAD.9>034027</XAD.9>
<XAD.10>G337</XAD.10>
</PID.11>
<PID.11>
<XAD.7>D</XAD.7>
</PID.11>
<PID.11>
<XAD.3>PULA</XAD.3>
<XAD.4>CA</XAD.4>
<XAD.5>09010</XAD.5>
<XAD.7>L</XAD.7>
<XAD.9>092050</XAD.9>
<XAD.10>H088</XAD.10>
<XAD.13>
<TS.1>20030503</TS.1>
</XAD.13>
</PID.11>
<PID.11>
<XAD.7>H</XAD.7>
<XAD.13>
<TS.1>20010614</TS.1>
</XAD.13>
</PID.11>
<PID.26>
<CE.4>100</CE.4>
<CE.5>ITALIA</CE.5>
<CE.6>ISTAT</CE.6>
</PID.26>
<PID.30>N</PID.30>
</PID>
<ROL>
<ROL.2>UC</ROL.2>
<ROL.3>
<CE.1>PP</CE.1>
<CE.2>primary care provider</CE.2>
</ROL.3>
<ROL.4>
<XCN.1>200108</XCN.1>
<XCN.13>ASLR</XCN.13>
</ROL.4>
</ROL>
<ROL>
<ROL.2>UC</ROL.2>
<ROL.3>
<CE.1>PP</CE.1>
<CE.2>primary care provider</CE.2>
</ROL.3>
<ROL.4>
<XCN.13>ASLA</XCN.13>
</ROL.4>
</ROL>
<NK1>
<NK1.1>1</NK1.1>
<NK1.2>
<XPN.1>
<FN.1>SELIS</FN.1>
</XPN.1>
<XPN.2>MARA</XPN.2>
</NK1.2>
<NK1.3>
<CE.1>SEL</CE.1>
</NK1.3>
<NK1.8>20010614</NK1.8>
<NK1.22>
<CE.1>A</CE.1>
<CE.2>Consenso Assente</CE.2>
</NK1.22>
</NK1>
<NK1>
<NK1.1>2</NK1.1>
<NK1.2>
<XPN.1>
<FN.1>SELIS</FN.1>
</XPN.1>
<XPN.2>MARA</XPN.2>
</NK1.2>
<NK1.3>
<CE.1>SEL</CE.1>
</NK1.3>
<NK1.7>
<CE.1>A</CE.1>
<CE.2>Diritto Assistenza</CE.2>
</NK1.7>
<NK1.8>20010614</NK1.8>
</NK1>
</ADR_A19.QUERY_RESPONSE>
<ADR_A19.QUERY_RESPONSE>
<PID>
<PID.3>
<CX.1>SLSMCL65D66L154G</CX.1>
<CX.4>
<HD.1>MINISTERO FINANZE</HD.1>
</CX.4>
<CX.5>NNITA</CX.5>
</PID.3>
<PID.3>
<CX.1>3408316</CX.1>
<CX.4>
<HD.1>RER</HD.1>
</CX.4>
<CX.5>RRI</CX.5>
</PID.3>
<PID.3>
<CX.1>319581</CX.1>
<CX.4>
<HD.1>080110</HD.1>
</CX.4>
<CX.5>PI</CX.5>
<CX.7>19650426</CX.7>
</PID.3>
<PID.3>
<CX.1>8789725</CX.1>
<CX.4>
<HD.1>080110</HD.1>
<HD.2>AZIENDA USL RAVENNA</HD.2>
</CX.4>
<CX.5>SS</CX.5>
<CX.7>19981119</CX.7>
</PID.3>
<PID.3>
<CX.1>80380000800071188843</CX.1>
<CX.4>
<HD.1>500001</HD.1>
</CX.4>
<CX.5>HC</CX.5>
<CX.8>20141231</CX.8>
</PID.3>
<PID.5>
<XPN.1>
<FN.1>SELIS</FN.1>
</XPN.1>
<XPN.2>MARCELLA</XPN.2>
</PID.5>
<PID.7>
<TS.1>19650426</TS.1>
</PID.7>
<PID.8>F</PID.8>
<PID.11>
<XAD.3>TEULADA</XAD.3>
<XAD.4>CA</XAD.4>
<XAD.7>N</XAD.7>
<XAD.9>092084</XAD.9>
<XAD.10>L154</XAD.10>
</PID.11>
<PID.11>
<XAD.7>D</XAD.7>
</PID.11>
<PID.11>
<XAD.1>
<SAD.1>VIA DS.CANALE MOLINETTO,145-FRAZIONE TERZA</SAD.1>
</XAD.1>
<XAD.3>RAVENNA</XAD.3>
<XAD.4>RA</XAD.4>
<XAD.5>48122</XAD.5>
<XAD.7>L</XAD.7>
<XAD.9>039014</XAD.9>
<XAD.10>H199</XAD.10>
<XAD.13>
<TS.1>19990122</TS.1>
</XAD.13>
</PID.11>
<PID.11>
<XAD.7>H</XAD.7>
<XAD.13>
<TS.1>19650426</TS.1>
</XAD.13>
</PID.11>
<PID.26>
<CE.4>100</CE.4>
<CE.5>ITALIA</CE.5>
<CE.6>ISTAT</CE.6>
</PID.26>
<PID.30>N</PID.30>
</PID>
<ROL>
<ROL.2>UC</ROL.2>
<ROL.3>
<CE.1>PP</CE.1>
<CE.2>primary care provider</CE.2>
</ROL.3>
<ROL.4>
<XCN.1>080110</XCN.1>
<XCN.13>ASLR</XCN.13>
</ROL.4>
</ROL>
<ROL>
<ROL.2>UC</ROL.2>
<ROL.3>
<CE.1>PP</CE.1>
<CE.2>primary care provider</CE.2>
</ROL.3>
<ROL.4>
<XCN.1>080110</XCN.1>
<XCN.13>ASLA</XCN.13>
</ROL.4>
<ROL.5>
<TS.1>19981119</TS.1>
</ROL.5>
</ROL>
<NK1>
<NK1.1>1</NK1.1>
<NK1.2>
<XPN.1>
<FN.1>SELIS</FN.1>
</XPN.1>
<XPN.2>MARCELLA</XPN.2>
</NK1.2>
<NK1.3>
<CE.1>SEL</CE.1>
</NK1.3>
<NK1.7>
<CE.1>Azienda</CE.1>
</NK1.7>
<NK1.8>20120224</NK1.8>
<NK1.13>
<XON.1>AUSL</XON.1>
<XON.6>
<HD.1>080110</HD.1>
</XON.6>
<XON.10>CARTACEO</XON.10>
</NK1.13>
<NK1.22>
<CE.1>1</CE.1>
<CE.2>Consenso Livello 1</CE.2>
<CE.4>20120224000000</CE.4>
</NK1.22>
</NK1>
<NK1>
<NK1.1>2</NK1.1>
<NK1.2>
<XPN.1>
<FN.1>SELIS</FN.1>
</XPN.1>
<XPN.2>MARCELLA</XPN.2>
</NK1.2>
<NK1.3>
<CE.1>SEL</CE.1>
</NK1.3>
<NK1.7>
<CE.1>A</CE.1>
<CE.2>Diritto Assistenza</CE.2>
</NK1.7>
<NK1.8>19650426</NK1.8>
</NK1>
</ADR_A19.QUERY_RESPONSE>
</ADR_A19>
</payLoad>
</PDresponse>
";
$response = html_entity_decode($dati);
$xmlString = preg_replace("/(<\/?)(\w+):([^>]*>)/", "$1$2$3", $response);
$xmlString = preg_replace('/[^(\x20-\x7F)]*/','', $xmlString);
/* adesso posso usare simplexml */
$xmlString = trim(preg_replace('/<\?xml.*\?>/', '', $xmlString, 1));
$xml = simplexml_load_string($xmlString,'SimpleXMLElement', LIBXML_NOCDATA);
print_r($xml);
/* Verifico che il messaggio non sia ancora sporco, si sa mai*/
if($xml->soapenvBody->sendMessageResponse->sendMessageReturn != NULL)
$xml = simplexml_load_string($xml->soapenvBody->sendMessageResponse->sendMessageReturn);
//print_r($xml);
if(strtolower($xml->isStatusOK) == "true")
$hl7mess = $xml->payLoad->{'ADR_A19'};
else
echo "errore";
print_r($hl7mess);
preferences:
62.08 ms | 402 KiB | 5 Q