Reputation: 139
I am having some trouble displaying XML values stored in my arrays. I successfully traversed the nodes, but I'm trying to echo the arrays all together. Here is my code:
<?php
$other_feed_url = "http://xml.pinnaclesports.com/pinnaclefeed.aspx?sporttype=Football&sportsubtype=NFL";
$xml2 = simplexml_load_file($other_feed_url);
$AwayLine[] = (string)$xml2->spread_visiting;
$HomeLine[] = (string)$xml2->home_visiting;
$AwayMoneyLine[] = (string)$xml2->moneyline_visiting;
$HomeMoneyLine[] = (string)$xml2->moneyline_home;
$AwaySpreadAdjust[] = (string)$xml2->spread_adjust_visiting;
$HomeSpreadAdjust[] = (string)$xml2->spread_adjust_home;
$UnderAdjust[] = (string)$xml2->under_adjust;
$OverAdjust[] = (string)$xml2->over_adjust;
$TotalPoints[] = (string)$xml2->total_points;
for($i=0;$i<20; $i++) {
foreach ($xml2->events->event as $event) {
$Spread = $event->periods->period[0]->spread;
$MoneyLine = $event->periods->period[0]->moneyline;
$TotalPoints = $event->periods->period[0]->total;
$AwayLine[] = $Spread->spread_visiting;
$HomeLine[] = $Spread->spread_home;
$AwayMoneyLine[] = $MoneyLine->moneyline_visiting;
$HomeMoneyLine[] = $MoneyLine->moneyline_home;
$UnderAdjust[] = $TotalPoints->under_adjust;
$OverAdjust[] = $TotalPoints->over_adjust;
$TotalPoints[] = $TotalPoints->total_points;
}
echo '<br>';
echo $AwayLine[$i];
echo '<br>';
echo $HomeLine[$i];
echo '<br>';
echo $AwayMoneyLine[$i];
echo '<br>';
echo $HomeMoneyLine[$i];
echo '<br>';
echo $TotalPoints[$i];
}
?>
Upvotes: 1
Views: 265
Reputation: 27609
You are setting $MoneyLine = $event->periods->period[0]->moneyline;
but this does not exist in the XML document you are loading. When you then try to fetch $AwayMoneyLine[] = $MoneyLine->moneyline_visiting;
, there is no resulting value. See below for an example of one of the XML nodes from the document you are parsing:
<event>
<event_datetimeGMT>2012-11-02 00:25</event_datetimeGMT>
<gamenumber>272519903</gamenumber>
<sporttype>Football</sporttype>
<league>NFL</league>
<IsLive>No</IsLive>
<participants>
<participant>
<participant_name>Kansas City Chiefs</participant_name>
<contestantnum>301</contestantnum>
<rotnum>301</rotnum>
<visiting_home_draw>Visiting</visiting_home_draw>
</participant>
<participant>
<participant_name>San Diego Chargers</participant_name>
<contestantnum>302</contestantnum>
<rotnum>302</rotnum>
<visiting_home_draw>Home</visiting_home_draw>
</participant>
</participants>
<periods>
<period>
<period_number>0</period_number>
<period_description>Game</period_description>
<periodcutoff_datetimeGMT>2012-11-02 00:25</periodcutoff_datetimeGMT>
<period_status>I</period_status>
<period_update>open</period_update>
<spread_maximum>10000</spread_maximum>
<moneyline_maximum>5000</moneyline_maximum>
<total_maximum>3000</total_maximum>
<spread>
<spread_visiting>9.5</spread_visiting>
<spread_adjust_visiting>-130</spread_adjust_visiting>
<spread_home>-9.5</spread_home>
<spread_adjust_home>120</spread_adjust_home>
</spread>
<total>
<total_points>42.5</total_points>
<over_adjust>-102</over_adjust>
<under_adjust>-108</under_adjust>
</total>
</period>
</periods>
</event>
Upvotes: 1