0
큰 HL7 메시지가 있습니다. 원하는 정보는 OBX 세그먼트에 포함되어 있으며 메시지 당 최소 10 개의 OBX 세그먼트가 있습니다 (PID, MSH 등 다른 세그먼트의로드도 포함)SimpleXML을 반복하는 방법
각 OBX 세그먼트를 반복하고 정보가 OBX.3.2 및 OBX5.1에서 유지됨이 코드를 실행할 때 첫 번째 OBX 세그먼트에서 데이터를 가져옵니다. 내가 도대체 뭘 잘못하고있는 겁니까?
$results = simplexml_load_string($payload);
//var_dump($results);
$test = $results->{'OBX'}->{'OBX.5'}->{'OBX.5.1'};
$testresult = $results->{'OBX'}->{'OBX.3'}->{'OBX.3.2'};
foreach($testresult as $b)
{
echo "$b<br>";
}
foreach($test as $a)
{
echo "$a<br>";
}
<HL7Message>
<MSH>
<MSH.1>|</MSH.1>
<MSH.2>^~\&</MSH.2>
<MSH.3>
<MSH.3.1>MPS</MSH.3.1>
</MSH.3>
<MSH.4>
<MSH.4.1></MSH.4.1>
</MSH.4>
<MSH.5/>
<MSH.6/>
<MSH.7>
<MSH.7.1>201402181659+1100</MSH.7.1>
</MSH.7>
<MSH.8/>
<MSH.9>
<MSH.9.1>ORU</MSH.9.1>
<MSH.9.2>R01</MSH.9.2>
</MSH.9>
<MSH.10>
<MSH.10.1>20140218-1.F.25399</MSH.10.1>
</MSH.10>
<MSH.11>
<MSH.11.1>P</MSH.11.1>
</MSH.11>
<MSH.12>
<MSH.12.1>2.3</MSH.12.1>
</MSH.12>
<MSH.13>
<MSH.13.1>1</MSH.13.1>
</MSH.13>
<MSH.14/>
<MSH.15>
<MSH.15.1>NE</MSH.15.1>
</MSH.15>
<MSH.16>
<MSH.16.1>AL</MSH.16.1>
</MSH.16>
<MSH.17>
<MSH.17.1>AU</MSH.17.1>
</MSH.17>
</MSH>
<PID>
<PID.1>
<PID.1.1>1</PID.1.1>
</PID.1>
<PID.2/>
<PID.3>
</PID.3>
<PID.4/>
<PID.5>
</PID.5>
<PID.6/>
<PID.7>
<PID.7.1></PID.7.1>
</PID.7>
<PID.8>
<PID.8.1></PID.8.1>
</PID.8>
<PID.9/>
<PID.10/>
<PID.11>
</PID.11>
<PID.12/>
<PID.13>
<PID.13.1/>
<PID.13.2/>
<PID.13.3/>
<PID.13.4/>
<PID.13.5/>
<PID.13.6/>
<PID.13.7>97953309</PID.13.7>
</PID.13>
<PID.14>
<PID.14.1/>
<PID.14.2/>
<PID.14.3/>
<PID.14.4/>
<PID.14.5/>
<PID.14.6/>
<PID.14.7/>
</PID.14>
<PID.15/>
<PID.16/>
<PID.17/>
<PID.18/>
<PID.19>
<PID.19.1>3156547109</PID.19.1>
</PID.19>
<PID.20/>
<PID.21/>
<PID.22/>
<PID.23/>
<PID.24/>
<PID.25/>
<PID.26/>
<PID.27/>
<PID.28/>
<PID.29/>
<PID.30/>
</PID>
<PV1>
<PV1.1>
<PV1.1.1>1</PV1.1.1>
</PV1.1>
<PV1.2>
<PV1.2.1>O</PV1.2.1>
</PV1.2>
</PV1>
<ORC>
<ORC.1>
<ORC.1.1>RE</ORC.1.1>
</ORC.1>
<ORC.2/>
<ORC.3>
<ORC.3.1></ORC.3.1>
<ORC.3.2>NATA</ORC.3.2>
<ORC.3.3></ORC.3.3>
<ORC.3.4></ORC.3.4>
</ORC.3>
<ORC.4/>
<ORC.5>
<ORC.5.1>A</ORC.5.1>
</ORC.5>
<ORC.6/>
<ORC.7/>
<ORC.8/>
<ORC.9/>
<ORC.10/>
<ORC.11/>
<ORC.12>
<ORC.12.1></ORC.12.1>
<ORC.12.2></ORC.12.2>
<ORC.12.3></ORC.12.3>
<ORC.12.4/>
<ORC.12.5/>
<ORC.12.6></ORC.12.6>
</ORC.12>
</ORC>
<OBR>
<OBR.1>
<OBR.1.1>1</OBR.1.1>
</OBR.1>
<OBR.2/>
<OBR.3>
<OBR.3.1>323611694-C-C950</OBR.3.1>
<OBR.3.2></OBR.3.2>
<OBR.3.3></OBR.3.3>
<OBR.3.4>N</OBR.3.4>
</OBR.3>
<OBR.4>
<OBR.4.1>C-C950</OBR.4.1>
<OBR.4.2>SE-CHEMISTRY VIRTUAL</OBR.4.2>
<OBR.4.3>2133</OBR.4.3>
</OBR.4>
<OBR.5/>
<OBR.6>
<OBR.6.1>20140214</OBR.6.1>
</OBR.6>
<OBR.7>
<OBR.7.1>201402141630+1100</OBR.7.1>
</OBR.7>
<OBR.8/>
<OBR.9/>
<OBR.10/>
<OBR.11/>
<OBR.12/>
<OBR.13/>
<OBR.14>
<OBR.14.1>201402141630+1100</OBR.14.1>
</OBR.14>
<OBR.15/>
<OBR.16>
<OBR.16.1></OBR.16.1>
<OBR.16.2></OBR.16.2>
<OBR.16.3></OBR.16.3>
<OBR.16.4/>
<OBR.16.5/>
<OBR.16.6></OBR.16.6>
</OBR.16>
<OBR.17/>
<OBR.18/>
<OBR.19/>
<OBR.20>
<OBR.20.1>
<OBR.20.1.1>LN</OBR.20.1.1>
<OBR.20.1.2>323611694</OBR.20.1.2>
</OBR.20.1>
</OBR.20>
<OBR.21/>
<OBR.22>
<OBR.22.1>201402181659+1100</OBR.22.1>
</OBR.22>
<OBR.23/>
<OBR.24>
<OBR.24.1>CH</OBR.24.1>
</OBR.24>
<OBR.25>
<OBR.25.1>F</OBR.25.1>
</OBR.25>
<OBR.26/>
<OBR.27>
<OBR.27.1/>
<OBR.27.2/>
<OBR.27.3/>
<OBR.27.4>20140214</OBR.27.4>
<OBR.27.5/>
<OBR.27.6>R</OBR.27.6>
</OBR.27>
<OBR.28>
<OBR.28.1>0000000Y</OBR.28.1>
<OBR.28.2></OBR.28.2>
<OBR.28.3></OBR.28.3>
<OBR.28.4/>
<OBR.28.5/>
<OBR.28.6/>
</OBR.28>
<OBR.29/>
</OBR>
<OBX>
<OBX.1>
<OBX.1.1>1</OBX.1.1>
</OBX.1>
<OBX.2>
<OBX.2.1>NM</OBX.2.1>
</OBX.2>
<OBX.3>
<OBX.3.1>2951-2</OBX.3.1>
<OBX.3.2>S Sodium:</OBX.3.2>
<OBX.3.3>LN</OBX.3.3>
</OBX.3>
<OBX.4/>
<OBX.5>
<OBX.5.1>144</OBX.5.1>
</OBX.5>
<OBX.6>
<OBX.6.1>mmol/L</OBX.6.1>
<OBX.6.2>mmol/L</OBX.6.2>
</OBX.6>
<OBX.7>
<OBX.7.1>135-145</OBX.7.1>
</OBX.7>
<OBX.8/>
<OBX.9/>
<OBX.10/>
<OBX.11>
<OBX.11.1>F</OBX.11.1>
</OBX.11>
<OBX.12/>
<OBX.13/>
<OBX.14>
<OBX.14.1>201402150533</OBX.14.1>
</OBX.14>
</OBX>
<OBX>
<OBX.1>
<OBX.1.1>2</OBX.1.1>
</OBX.1>
<OBX.2>
<OBX.2.1>NM</OBX.2.1>
</OBX.2>
<OBX.3>
<OBX.3.1>2823-3</OBX.3.1>
<OBX.3.2>S Potassium:</OBX.3.2>
<OBX.3.3>LN</OBX.3.3>
</OBX.3>
<OBX.4/>
<OBX.5>
<OBX.5.1>5.6</OBX.5.1>
</OBX.5>
<OBX.6>
<OBX.6.1>mmol/L</OBX.6.1>
<OBX.6.2>mmol/L</OBX.6.2>
</OBX.6>
<OBX.7>
<OBX.7.1>3.5-5.5</OBX.7.1>
</OBX.7>
<OBX.8>
<OBX.8.1>H</OBX.8.1>
</OBX.8>
<OBX.9/>
<OBX.10/>
<OBX.11>
<OBX.11.1>F</OBX.11.1>
</OBX.11>
<OBX.12/>
<OBX.13/>
<OBX.14>
<OBX.14.1>201402150533</OBX.14.1>
</OBX.14>
</OBX>
<OBX>
<OBX.1>
<OBX.1.1>3</OBX.1.1>
</OBX.1>
<OBX.2>
<OBX.2.1>NM</OBX.2.1>
</OBX.2>
<OBX.3>
<OBX.3.1>2075-0</OBX.3.1>
<OBX.3.2>S Chloride:</OBX.3.2>
<OBX.3.3>LN</OBX.3.3>
</OBX.3>
<OBX.4/>
<OBX.5>
<OBX.5.1>103</OBX.5.1>
</OBX.5>
<OBX.6>
<OBX.6.1>mmol/L</OBX.6.1>
<OBX.6.2>mmol/L</OBX.6.2>
</OBX.6>
<OBX.7>
<OBX.7.1>95-110</OBX.7.1>
</OBX.7>
<OBX.8/>
<OBX.9/>
<OBX.10/>
<OBX.11>
<OBX.11.1>F</OBX.11.1>
</OBX.11>
<OBX.12/>
<OBX.13/>
<OBX.14>
<OBX.14.1>201402150533</OBX.14.1>
</OBX.14>
</OBX>
</HL7Message>
작업 XML 파일을 사용자의 HL7 메시지 파일 – Sundar
감사 다르에게되어 있습니다. 나도 같은 해결책을 생각해 냈지만 대답 할 시간을 내 주셔서 감사드립니다. 이 현재 프로젝트를 끝내면 전체 코드를 게시하여 HL7 메시지를 파싱해야하는 다른 사람이 출발점을 갖게됩니다. – Legless