2010-11-10 3 views
0

Nous utilisons des clients SAOP depuis un moment maintenant sans problème. Mais maintenant nous faisons face au défi suivant et je ne peux pas trouver la réponse. Nous devons envoyer la structure XML suivante:Comment créer cette requête XML SOAP?

<Cards> 
<CardDetails> 
    <Name>string</Name> 
    <Address>string</String> 
</CardDetails> 
<CardDetails> 
    <Name>string</Name> 
    <Address>string</String> 
</CardDetails> 
</Cards> 

Comme vous le voyez, nous avons besoin de deux instances de 'CardDetails'. Créer un tableau PHP me permettra seulement d'envoyer 1.

$data = array(
    'Cards' => array(
     'CardDetails' => array(
      'Name' => 'test name', 
      'Address' => 'test address' 
     ), 
     'CardDetails' => array(
      'Name' => 'second test name', 
      'Address' => 'second test address' 
     ) 
    ) 
)); 

Bien sûr, seule la deuxième adresse sera utilisée. Mais quelle serait la solution pour que cela fonctionne?

Merci beaucoup!

Répondre

0

Et quelle fonction/classe que vous utilisez pour tourner tableau à XML?

Essayez cette structure:

$data = array(
    'Cards' => array(
     'CardDetails' => array(
      array(
       'Name' => 'test name', 
       'Address' => 'test address' 
      ), 
      array(
       'Name' => 'second test name', 
       'Address' => 'second test address' 
      ) 
     ) 
    ) 
); 

Si cela ne fonctionne pas et vous pouvez modifier la fonction sérialisation, il suffit de vérifier si la clé actuelle est numérique. Si c'est le cas, utilisez le nom de la clé parent pour l'étiquette.

Questions connexes