Проблема вот какая. Получаю с помощью скрипта xml'ки различные, вот к примеру такого вида(сократил):
<?xml version="1.0" encoding="WINDOWS-1251"?>
<response state="0">
<doc doc_type="12" fact_date="2011-12-06">
<parcel zbarcode="1+97159281" weight="16,986" stp_date="06.12.2011" tarif="3660,23" ins_rate="274,82" ins_sum="5133"/>
<parcel zbarcode="1+97139281" weight="16,986" stp_date="06.12.2011" tarif="3660,23" ins_rate="274,82" ins_sum="5133"/> </doc>
</response>
Пытаюсь вывести данные в таблицу
<?php
$xml = @simplexml_load_string($s_Response);
if(count($xml) > 0) foreach($xml as $item) {
?>
<tr>
<td><?php echo $item['doc_type'] ?></td>
<td><?php echo $item['doc_type_descrip] '] ?></td>
<td><?php echo $item['idoc_id'] ?></td>
<td><?php echo $item['doc_date'] ?></td>
<td><?php echo $item['doc_datetime'] ?></td>
<td><?php echo $item['fact_date'] ?></td>
<td><?php echo $item['nakl_num'] ?></td>
</tr>
<tr>
<td><?php echo $item['zbarcode'] ?></td>
<td><?php echo $item['weight'] ?></td>
</tr>
<?php
}
?>
</table>
По итогу выводит только значения из doc
При приёмке других ответов XML к примеру где идут
<doc>
<doc>
<doc>
....
выводится все ок в столбик.
При print_r($xml); выводит:
SimpleXMLElement Object
(
[@attributes] => Array
(
[state] => 0
)
[doc] => SimpleXMLElement Object
(
[@attributes] => Array
(
[doc_type] => 12
[doc_type_descrip] => Отгрузка консолидированных отправлений
[idoc_id] => 1702
[doc_date] => 2011-12-06 17:17:39
[doc_datetime] => 2011-12-06T17:17:39
[fact_date] => 2011-12-06
)
[parcel] => Array
(
[0] => SimpleXMLElement Object
(
[@attributes] => Array
(
[zbarcode] => 1+97159281
[tar_cmnt] => Авиа
[mail_type] => 4
[mail_ctg] => 2
[post_mark] => 16
[weight] => 16,986
[stp_date] => 06.12.2011
[barcode] => 99999945000029
[tar_zip] => 678380
[nalog] => 5133
[trans_type] => 1
[av_tar] => 2840,32
[naz_tar] => 545,09
[tarif] => 3660,23
[ins_rate] => 274,82
[ins_sum] => 5133
)
)
[1] => SimpleXMLElement Object
(
[@attributes] => Array
(
[zbarcode] => 1+97159282
[tar_cmnt] => Авиа
[mail_type] => 4
[mail_ctg] => 2
[post_mark] => 0
[weight] => 2,296
[stp_date] => 06.12.2011
[barcode] => 99999945000012
[tar_zip] => 677000
[nalog] => 1658
[trans_type] => 1
[av_tar] => 615,15
[naz_tar] => 0
[tarif] => 681,47
[ins_rate] => 66,32
[ins_sum] => 1658
)
)
)
)
)
Объсните пожалуйста что не так делаю?