Ein einfacher SOAP-Client in PHP

Neulich habe ich beschrieben, wie ein ziemlich einfacher SOAP-Webservice in PHP mit der NuSOAP-Bibliothek erzeugt werden kann.Heute geht es darum, den dort angebotenen Dienst auch zu nutzen.

Auch hierfür nutzen wir wieder NuSOAP. Der Client ist noch simpler als der Server:


require_once('nusoap/nusoap.php');

$client = new soapclient('http://www.example.com/soapserver.php');
$resultset = $client->call('suche', 'Suchbegriff');

foreach ($resultset as $result) {
    echo "$result <br />;
} 

Zunächst wird ein soapclient-Objekt erzeugt, wobei auf die URL des Servers verwiesen wird. Im nächsten Schritt wird dann die SOAP-Funktion (suche) aufgerufen, und das Ergebnis zurückgegeben.

Dieser Schnipsel ist natürlich alles andere als komplett; so fehlt beispielsweise die gesamte Fehlerbehandlung (was tun, wenn der Webservice nicht verfgbar ist?).

Zu beachten ist auch, dass SOAP sehr strikt typisiert, während PHP ja so gut wie gar nicht typisiert ist. NuSOAP versucht das, weitestgehend auszubügeln, hat aber gegebenenfalls auch weitere Möglichkeiten, Variablen in die richtigen Typen zu stecken.

Mehr dazu auch in der NuSOAP-Dokumentation.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.