Forum und email

SoapClient->__soapCall()

(No version information available, might be only in CVS)

SoapClient->__soapCall() — Aufrufen einer SOAP-Funktion

Beschreibung

SoapClient
mixed __soapCall ( string $function_name , array $arguments [, array $options [, mixed $input_headers [, array &$output_headers ]]] )

Es handelt sich um eine low-level-API-Funktion, um einen SOAP-Aufruf durchzuführen. Normalerweise kann im WSDL-Modus ein SOAP-Aufruf einfach als SoapClient-Methode aufgerufen werden. Diese Methode ist im nicht-WSDL-Modus nützlich, wenn die soapaction unbekannt ist, die uri vom Standard abweicht oder wenn SOAP-Header gesendet oder empfangen werden.

Im Fehlerfall kann ein SOAP-Aufruf PHP veranlassen eine Exception zu werfen oder ein SoapFault-Objekt zurückzugeben, wenn Exceptions deaktiviert wurden. Um zu prüfen, ob der Funktionsaufruf eine SoapFault-Exception nicht abgefangen hat, sollte die Rückgabe mit is_soap_fault() überprüft werden.

Rückgabewerte

SOAP-Funktionen können einen oder mehrere Werte zurückgeben. Wenn nur ein Wert zurückgegeben wurde, entspricht die Rückgabe von __soapCall einem primitiven Datentyp (z.B. integer, string, etc). Wenn mehrere Werte zurückgegeben werden, besteht die Rückgabe aus einem assoziativem Array mit benannten Prametern.

Beispiele

Example#1 Beispiele

<?php

$client 
= new SoapClient("some.wsdl");
$client->SomeFunction($a$b$c);

$client->__soapCall("SomeFunction", array($a$b$c));
$client->__soapCall("SomeFunction", array($a$b$c), NULL,
                    new 
SoapHeader(), $output_headers);


$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
                                     
'uri'      => "http://test-uri/"));
$client->SomeFunction($a$b$c);
$client->__soapCall("SomeFunction", array($a$b$c));
$client->__soapCall("SomeFunction", array($a$b$c),
                    array(
'soapaction' => 'some_action',
                          
'uri'        => 'some_uri'));
?>