Parse SimpleXMLElement Object
Bonjour,
je rencontre un problème pour parser une réponse Soap
voilà ce que je reçois :
Code:
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
| <?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<t:trackingHeader xmlns:t="http://www.site.com/iosw/v1"
xmlns:date="http://exslt.org/dates-and-times"
xmlns:str="http://exslt.org/strings"
xmlns:regExp="http://exslt.org/regular-expressions"
>
<t:requestId>9216cdc0-0029-4365-a59f-e5f71dfa8143</t:requestId>
<t:timestamp>2019-02-13T15:27:03+01:00</t:timestamp>
</t:trackingHeader>
</soap:Header>
<soap:Body>
<ns2:ZetrActivityListResponse xmlns:ns2="urn:sap-com:document:sap:soap:functions:mc-style">
<Folders/>
<Messages>
<item>
<ReturnNum>005</ReturnNum>
<ReturnText>Les valeurs de filtres saisies nont permis de sélectionner aucune donnée</ReturnText>
</item>
</Messages>
<ReturnCode>W</ReturnCode>
</ns2:ZetrActivityListResponse>
</soap:Body>
</soap:Envelope> |
je cherche à récupérer la valeur de ReturnNum donc j'ai fait :
Code:
1 2 3 4 5 6 7 8 9 10
| $xml = new \SimpleXMLElement($client->__getLastResponse());
$xml->registerXPathNamespace('soap', 'http://schemas.xmlsoap.org/soap/envelope/');
$xml->registerXPathNamespace('ns2', 'urn:sap-com:document:sap:soap:functions:mc-style');
$xml->registerXPathNamespace('t', 'http://www.francetelecom.com/iosw/v1');
$code_retour = $xml->xpath('//soap:Envelope/soap:Body/ns2:ZetrActivityListResponse/Messages/item');
$folders = $xml->xpath('//soap:Envelope/soap:Body/ns2:ZetrActivityListResponse/Folders/item');
var_dump($code_retour[0]->ReturnNum); |
seulement le var_dump me donne :
Code:
1 2
| object(SimpleXMLElement)[43]
public 0 => string '005' (length=3) |
Pouvez-vous m'aider svp ?