Bonjour à tous les lecteurs de ce post !

Voilà je m’entraîne à lire les information d'un webservice "http://footballpool.dataaccess.eu/data/info.wso?wsdl" via php.

J'arrive à lire un objet simple mais dès lors qu'il y a un autre objet dans cet objet je n'arrive pas à accéder à ses informations.

voilà le bout du wdsl qu'il m'intéresse de lire :
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<xs:complexType name="tTopSelectedGoalScorer">
<xs:sequence>
<xs:element name="sName" type="xs:string"/>
<xs:element name="iSelected" type="xs:int"/>
<xs:element name="Countries" type="tns:ArrayOftCountrySelectedTopScorer"/>
</xs:sequence>
</xs:complexType>

dedans je veux lire "Countries" qui lui contient un array ici présent :
Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
<xs:complexType name="tCountrySelectedTopScorer">
<xs:sequence>
<xs:element name="sName" type="xs:string"/>
<xs:element name="iCount" type="xs:int"/>
</xs:sequence>
</xs:complexType>

Lors que je fais ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
$topn = 2;
 
$result3 = $client->TopSelectedGoalScorers(array('iTopN' => $topn ));
  // Note that $array contains the result of the traversed object structure
  $array3 = $result3->TopSelectedGoalScorersResult->tTopSelectedGoalScorer;
 
  print_r($array3);
 
 
  print "
    <table border='2'>
      <tr>
        <th>Rank</th>
        <th>Name</th>
        <th>Selected</th>
		<th>Countries</th>
      </tr>
  ";
 
  foreach($array3 as $key1=>$value2){
 
 
    print "
      <tr>
        <td align='right'>" . ($key1+1) . "</td>
          <td>" . $value2->sName . "</td>
          <td align='right'>" . $value2->iSelected . "</td>
		  <td align='right'>" . $value2->sName . "</td>
        </tr>";
 
  }
 
 
 
 
  print "</table><br/>";
J'obtient ceci "
Array ( [0] => stdClass Object ( [sName] => Mario Gómez [iSelected] => 31 [Countries] => stdClass Object ( [tCountrySelectedTopScorer] => Array ( [0] => stdClass Object ( [sName] => Australia [iCount] => 1 ) [1] => stdClass Object ( [sName] => Brazil [iCount] => 2 ) [2] => stdClass Object ( [sName] => Denmark [iCount] => 1 ) [3] => stdClass Object ( [sName] => England [iCount] => 1 ) [4] => stdClass Object ( [sName] => Germany [iCount] => 3 ) [5] => stdClass Object ( [sName] => Hungary [iCount] => 2 ) [6] => stdClass Object ( [sName] => Jordan [iCount] => 1 ) [7] => stdClass Object ( [sName] => Netherlands [iCount] => 11 ) [8] => stdClass Object ( [sName] => Peru [iCount] => 1 ) [9] => stdClass Object ( [sName] => Spain [iCount] => 3 ) [10] => stdClass Object ( [sName] => Sweden [iCount] => 4 ) [11] => stdClass Object ( [sName] => United Kingdom [iCount] => 1 ) ) ) ) [1] => stdClass Object ( [sName] => Cristiano Ronaldo [iSelected] => 23 [Countries] => stdClass Object ( [tCountrySelectedTopScorer] => Array ( [0] => stdClass Object ( [sName] => Austria [iCount] => 1 ) [1] => stdClass Object ( [sName] => Belgium [iCount] => 1 ) [2] => stdClass Object ( [sName] => Brazil [iCount] => 5 ) [3] => stdClass Object ( [sName] => Denmark [iCount] => 5 ) [4] => stdClass Object ( [sName] => Germany [iCount] => 2 ) [5] => stdClass Object ( [sName] => Netherlands [iCount] => 2 ) [6] => stdClass Object ( [sName] => Sweden [iCount] => 4 ) [7] => stdClass Object ( [sName] => United States [iCount] => 3 ) ) ) ) ) "

Je n'arrive pas à lire
[Countries] => stdClass Object ( [tCountrySelectedTopScorer] => Array ( [0] => stdClass Object ( [sName] => Australia [iCount] => 1 )
Merci de votre attention