I have a String and it gives a XML output , now I want to capture that value. But the problem is there are same variables and that needs to run in a loop.
It's a Shipping method activity tracking, means shiftment step by step process and outputing that
Here is the XML I am getting:
<ArrayOfConsignmentTrack xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://tempuri.org/">
<ConsignmentTrack>
<ERROR/>
<DOCKNO>AB000000002</DOCKNO>
<TRANSIT_LOCATION>ANDHERI BRANCH OFFICE, MUMBAI</TRANSIT_LOCATION>
<ACTIVITY>In Transit to</ACTIVITY>
<EVENTDATE>13 Apr 2015</EVENTDATE>
<EVENTTIME>18:27:40</EVENTTIME>
<NEXT_LOCATION>ANDHERI BRANCH OFFICE</NEXT_LOCATION>
<TRACKING_CODE>T</TRACKING_CODE>
</ConsignmentTrack>
<ConsignmentTrack>
<ERROR/>
<DOCKNO>AB000000002</DOCKNO>
<TRANSIT_LOCATION>OKHLA BRANCH, OKHLA</TRANSIT_LOCATION>
<ACTIVITY>Picked up and Booking processed</ACTIVITY>
<EVENTDATE>13 Apr 2015</EVENTDATE>
<EVENTTIME>17:27:53</EVENTTIME>
<NEXT_LOCATION/>
<TRACKING_CODE>T</TRACKING_CODE>
</ConsignmentTrack>
</ArrayOfConsignmentTrack>
Now I want a output like this:
I am using this code to get the value
$myXMLData = file_get_contents($URL);
$xml = (array)simplexml_load_string($myXMLData);
if($xml) {
$dataArray = (array)$xml['ConsignmentTrack'];
echo $DOCKNO = $dataArray['DOCKNO'];
echo $TRANSIT_LOCATION = $dataArray['TRANSIT_LOCATION'];
echo $ACTIVITY = $dataArray['ACTIVITY'];
echo $EVENTDATE = $dataArray['EVENTDATE'];
echo $EVENTTIME = $dataArray['EVENTTIME'];
echo $NEXT_LOCATION = $dataArray['NEXT_LOCATION'];
} else{
echo " - Invalid Docket No.";
}
But it's giving only one value. What loop structure do I have to use?