2011-07-08 9 views
1

Quelqu'un peut-il me dire ce qui ne va pas avec ce code?foreach déclaration erreur

<?php 
$feedID = '28241415'; 
$oddsArray = array(); 
$source = file_get_contents("https://www.bwin.com/partner/xml/query.aspx?source=events&lid=1&xpath=/ROOT/EVENTS/E[@LID=46%20and%[email protected]=14%20and%[email protected]=4]"); 
$xml = simplexml_load_string($source); 
$game = $xml->xpath("//G"); 

foreach ($game as $event) 
{ 
    if ($event['DBID'] == $feedID) 
     { 
      foreach ($event->children() as $odds) 
       { 
        array_push($oddsArray, array('oddsID' => $odds['DBID'], 'odds' => $odds['O'])); 
       } 
     } 
} 
foreach ($array as $oddsArray) 
{ 
echo $array['odds']; 
echo $array['oddsID']; 
} 
?> 

L'erreur que je reçois est:

Attention: Invalid argument supplied for foreach() dans /home/pokerint/public_html/test.php en ligne

+3

S'il vous plaît définir « ne fonctionne pas. » Que doit-il faire, et que fait-il? –

+0

@richard «Ça ne marche pas» est généralement un gros signe à dire, downvote ma question. Expliquez pourquoi cela ne fonctionne pas et ce que vous essayez d'accomplir - avant que cela ne se termine. –

+0

Avertissement: Argument invalide fourni pour foreach() dans /home/pokerint/public_html/test.php sur la ligne 18 –

Répondre

6

Je suis deviner ici comme la question n'est pas tout à fait clair, mais je pense que vous devez inverser l'ordre de vos variables dans votre dernière foreach de

foreach ($array as $oddsArray) 
{ 
echo $array['odds']; 
echo $array['oddsID']; 
} 

Pour

foreach ($oddsArray as $array) 
{ 
echo $array['odds']; 
echo $array['oddsID']; 
} 
+2

Battez-moi. Darn –

+0

génious merci beaucoup, vous venez de me sauver encore 2 heures de travail: D merci encore :) –

0
foreach ($array as $oddsArray) 

Je pense que vous avez cette arrière ...

Pour éviter toute confusion, je l'utilise toujours quelque chose de facile à retenir ...

foreach ($oddsArray as $key => $value) { 

OU

foreach ($oddsArray as $value) { 

même ...

alors vous ne serez jamais mélangé (bien je l'espère jamais :)