Problème tableaux WSDL/SoapClient PHP
Bonjour,
Je développe un webservice SOAP PHP.
Je n'arrive pas à passer un tableau avec deux éléments :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
array(2) {
[0]=>
object(stdClass) (2) {
["nom"]=>
string(3) "truc"
["prenom"]=>
string(2) "toto"
}
[1]=>
object(stdClass) (2) {
["nom"]=>
string(3) "efhygh"
["prenom"]=>
string(2) "super"
}
} |
wsdl :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
<xsd:complexType name="personne">
<xsd:all>
<xsd:element name="nom" type="xsd:string"/>
<xsd:element name="prenom" type="xsd:string"/>
</xsd:all>
</xsd:complexType>
<xsd:complexType name="personnes_array">
<sequence>
<element minOccurs="0" maxOccurs="unbounded" name="person" type="tns:personne"/>
</sequence>
</xsd:complexType>
<-- -->
<wsdl:message name='savePersonnesRequest'>
<wsdl:part name="personnes" element="xsd:personnes_array"/>
</wsdl:message> |
Lorsque j'appelle la méthode savePersonnes avec plusieurs éléments dans le tableau "personnes", où je liste les noms et prénoms (en chaîne string) cela ne fonctionne pas. Par contre lorsque mon tableau contient juste un élément cela fonctionne :
tableau de cas qui fonctionne :
Code:
1 2 3 4 5 6 7 8 9
|
array(1) {
[0]=>
object(stdClass) (2) {
["nom"]=>
string(3) "truc"
["prenom"]=>
string(2) "toto"
} |
PHP :
Code:
1 2 3 4 5 6
|
$personne1 = new stdClass();
$personne1 -> nom = "truc";
$personne1 -> prenom = "toto";
$personnes = array($personne1);
$clientSoap -> savePersonnes($personnes); |
Dès que je rajoute une $personne2 au tableau $personne cela ne fonctionne pas...
Merci d'avance de vos réponses.