par
clementinemonrency » 04 août 2016, 17:03
Bonjour,
J'essaye de lire un résultat XML:
stdClass Object
(
[GetBilletResult] => Array
(
[0] => stdClass Object
(
[tabGrilleHoraire] => stdClass Object
(
[tabDetailTarifArticle] => stdClass Object
(
[sNomArticle] => BUS HOP ON HOP OFF 24H
[tabDetail] => Array
(
[0] => stdClass Object
(
[sDetail] => Liste Pax : Pax n°1 [Âge:19]
[sAgePax] => 19;
[sTranche] => ADULTE(12-99)
...
)
[1] => stdClass Object
(
[sDetail] => Prix de Base
[sAgePax] =>
[sTranche] =>
...
)
...
Mon code :
$processed = array();
foreach( $billets as $GetBilletResult )
{
$sNomProduit = $GetBilletResult->getElementsByTagName( "sNomProduit" )->item(0)->nodeValue;
$sNomArticle = $GetBilletResult->getElementsByTagName( "sNomArticle" )->item(0)->nodeValue;
$tabDetailTarifArticle = $GetBilletResult->getElementsByTagName( "tabDetailTarifArticle" )->item(0)->nodeValue;
if (!isset($processed[$sNomProduit])) {
$processed[$sNomProduit] = array();
}
$processed[$sNomProduit][] = array(
'sNomArticle' => $sNomArticle,
'tabDetailTarifArticle' => $tabDetailTarifArticle,
);
}
Loop:
foreach ($processed as $sNomProduit => $list) {
echo "<h3> ".$sNomProduit."</h3>";
foreach ($list as $item) {
echo "<h5> ".$item['sNomArticle'] . "</h5>";
var_dump($item['tabDetailTarifArticle']) ;
}
}
Sortie :
BUS HOP ON HOP OFF BARCELONE 24H
BUS HOP ON HOP OFF 24H
string 'BUS HOP ON HOP OFF 24HOK19;falsefalseListe Pax : Pax n°1 [Âge:19]19;ADULTE(12-99)00000Prix de Base2835000Total2835000Remise00000Commission00000Net à payer2835000' (length=164)
Je ne sais pas pourquoi l'array
tabDetailTarifArticle s'affiche comme string et pas comme array
L'affichage devrait être comme suit :
BUS HOP ON HOP OFF BARCELONE 24H
BUS HOP ON HOP OFF 24H
Article :BUS HOP ON HOP OFF 24H
Status : OK
ListePax : 19;
CategClient: false;
...