Comment utiliser le savon de classe en php (avec exemple)?
Je voudrais apprendre l'utilisation de base de SAVON par le biais de ce (météo) exemple.
Comment est-il digne de traiter ces données?
Demande:
POST /globalweather.asmx HTTP/1.1
Host: www.webservicex.net
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<GetWeather xmlns="http://www.webserviceX.NET">
<CityName>string</CityName>
<CountryName>string</CountryName>
</GetWeather>
</soap12:Body>
</soap12:Envelope>
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
Réponse:
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<GetWeatherResponse xmlns="http://www.webserviceX.NET">
<GetWeatherResult>string</GetWeatherResult>
</GetWeatherResponse>
</soap12:Body>
</soap12:Envelope>
- J'ai trouvé d'informations à ce sujet, mais pas un toturial. Bonne activité non pour php.net/manual/en/book.soap.php . Si vous postez un grand toturial, je vais accepter votre réponse (Par grand, je veux dire: avec ce que je peux faire cet exemple)
- Topener, je suis en désaccord. Ce site est pour la programmation de questions connexes, non seulement pour le code. Autant que la question n'est pas trop ouverte, elle doit être fine. De grandes réponses à cette question des liens vers des ressources utiles, dans le manuel et ailleurs, ou peut-être un exemple simple.
Vous devez vous connecter pour publier un commentaire.
L'approche plus simple serait:
serait sortie de
Le reste peut ensuite être analysé avec SimpleXML ou quelque chose de similaire.
Remarque, que le type de réponse est spécifique à ce service web. Il y a de mieux web services, qui n'en revient tout simplement pas une chaîne de caractères xml, mais plutôt de fournir la réponse de la structure dans le WSDL.
MODIFIER un exemple pour une "plus structuré" webservice pourrait être la recherche GeoIP sur le même site:
cela vous donne:
Maintenant, vous pouvez simplement accéder à l'valeurs en invoquant
GetGeoIP()
etGetWeather()
ne sont pas "réel" les méthodes de la SoapClient, mais ils sont appelés via la magie__call()
méthode. Les noms des méthodes sont définies dans le fichier WSDL.