Analyser la réponse XML de PHP CURL
Je suis en train d'essayer d'utiliser une API qui renvoie à la structure suivante
<TwilioResponse>
<Call>
<Sid>CAe1644a7eed5088b159577c5802d8be38</Sid>
<DateCreated>Tue, 10 Aug 2010 08:02:17 +0000</DateCreated>
<DateUpdated>Tue, 10 Aug 2010 08:02:47 +0000</DateUpdated>
<ParentCallSid/>
<AccountSid>AC5ef872f6da5a21de157d80997a64bd33</AccountSid>
<To>+14153855708</To>
<From>+14158141819</From>
<PhoneNumberSid></PhoneNumberSid>
<Status>completed</Status>
<StartTime>Tue, 10 Aug 2010 08:02:31 +0000</StartTime>
<EndTime>Tue, 10 Aug 2010 08:02:47 +0000</EndTime>
<Duration>16</Duration>
<Price>-0.03000</Price>
<Direction>outbound-api</Direction>
</Call>
</TwilioResponse>
Je peux obtenir des données XML en utilisant CURL qui fonctionne comme ceci:
$handle = curl_init();
curl_setopt($handle, CURLOPT_URL, $base_url."/Accounts/{$accountSid}/Calls");
curl_setopt($handle, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($handle);
curl_close($handle);
cependant une fois que j'ai récupérer les données au format XML j'ai essayer et de le mettre dans un élément simpleXML et de le renvoyer vers la page qui a appelé cette fonction comme suit:
$xml = new SimpleXmlElement($response);
if($xml)
{
return $xml;
}
else
{
return false;
}
Quand je rentre dans le XML de la page qui a appelé la fonction, je peux voir beaucoup de simpleXMLElement Objets si je fais un print_r() mais quand je fais un foreach($xml->TwilioResponse->appel $appel) je ne reçois rien et il ne semble pas que je puisse réellement percer dans les données.
Quelqu'un peut m'aider et où je vais mal avec cela? Elle a été conduite m'a absolument fou pour les deux dernières heures.
MERCI!
OriginalL'auteur ackerchez | 2012-01-08
Vous devez vous connecter pour publier un commentaire.
Il semble que il ya deux problèmes avec
$xml->TwilioResponse->call
.$xml
contient lesTwilioResponse
élément (le "document"),$xml->TwilioResponse
est incorrect.call
devrait êtreCall
.Donner
$xml->Call
un tour.N'oubliez pas d'accepter cette réponse
vite fait bien fait 🙂
OriginalL'auteur salathe