SoapClient::__soapCall
(PHP 5, PHP 7, PHP 8)
SoapClient::__soapCall — Ruft eine SOAP-Funktion auf
Beschreibung
string
$name
,array
$args
,?array
$options
= null
,SoapHeader|array|null
$inputHeaders
= null
,array
&$outputHeaders
= null
): mixed
Es handelt sich um eine Low-Level-API-Funktion, die verwendet wird, um
einen SOAP-Aufruf durchzuführen. Normalerweise, im WSDL-Modus, können
SOAP-Funktionen als Methoden des SoapClient-Objekts
aufgerufen werden. Diese Methode ist im non-WSDL-Modus nützlich, wenn die
soapaction
unbekannt ist, die uri
vom Standard abweicht oder wenn SOAP-Header gesendet und/oder empfangen
werden.
Im Fehlerfall kann der Aufruf einer SOAP-Funktion PHP veranlassen, eine Exception auszulösen oder, wenn Exceptions deaktiviert wurden, ein SoapFault-Objekt zurückzugeben. Um zu prüfen, ob der Funktionsaufruf eine SoapFault-Exception nicht abgefangen hat, sollte die Rückgabe mit is_soap_fault() überprüft werden.
Parameter-Liste
-
name
-
Der Name der aufzurufenden SOAP-Funktion.
-
args
-
Ein Array aus Parametern, die an die Funktion übergeben werden sollen. Dies kann entweder ein sortiertes oder ein assoziatives Array sein. Es ist zu beachten, dass die meisten SOAP-Server die Angabe von Parameternamen erfordern, so dass in diesen Fällen ein assoziatives Array verwendet werden muss.
-
options
-
Ein assoziatives Array von Optionen, die an den Client übergeben werden sollen.
Die Option
location
enthält die URL des angesprochenen Webservices.Die Option
uri
enthält den Zielnamensraum des SOAP-Services.Die Option
soapaction
ist die aufzurufende Aktion. -
inputHeaders
-
Ein Array von Headern, die mit der SOAP-Anfrage gesendet werden sollen.
-
outputHeaders
-
Sofern vorhanden, wird dieses Array mit den Headern des SOAP-Antwort gefüllt.
Rückgabewerte
SOAP-Funktionen können einen oder mehrere Werte zurückgeben. Wenn von einer SOAP-Funktion nur ein Wert zurückgegeben wird, ist der Rückgabewert ein primitiver Datentyp (einem sog. Skalar). Wenn mehrere Werte zurückgegeben werden, wird stattdessen ein assoziatives Array mit benannten Parametern zurückgegeben.
Wenn das SoapClient-Objekt mit der auf false
gesetzten Option exceptions
erstellt wurde, wird bei
einem Fehler ein SoapFault-Objekt zurückgegeben.
Beispiele
Beispiel #1 SoapClient::__soapCall()-Beispiel
<?php
$client = new SoapClient("ein.wsdl");
$client->EineFunktion($a, $b, $c);
$client->__soapCall("EineFunktion", array($a, $b, $c));
$client->__soapCall("EineFunktion", array($a, $b, $c), NULL,
new SoapHeader(), $output_headers);
$client = new SoapClient(null, array('location' => "http://localhost/soap.php",
'uri' => "http://test-uri/"));
$client->EineFunktion($a, $b, $c);
$client->__soapCall("EineFunktion", array($a, $b, $c));
$client->__soapCall("EineFunktion", array($a, $b, $c),
array('soapaction' => 'some_action',
'uri' => 'some_uri'));
?>
Siehe auch
- SoapClient::__construct() - SoapClient-Konstruktor
- SoapParam::__construct() - SoapParam-Konstruktor
- SoapVar::__construct() - SoapVar-Konstruktor
- SoapHeader::__construct() - SoapHeader-Konstruktor
- SoapFault::__construct() - SoapFault-Konstruktor
- is_soap_fault() - Prüft, ob ein SOAP-Aufruf fehlgeschlagen ist