(PHP 5, PHP 7, PHP 8)
SoapClient::__doRequest — Führt eine SOAP-Anfrage aus
$request
,$location
,$action
,$version
,$oneWay
= false
Führt eine SOAP-Anfrage über HTTP aus.
Diese Methode kann in einer vererbten Klasse überschrieben werden, um weitere Transportlayer, die Ausführung zusätzlichen XML-Processings oder andere Verwendungszwecke zu implementieren.
request
Die XML-SOAP-Anfrage.
location
Die anzufragende URL.
action
Die SOAP-Aktion.
version
Die SOAP-Version.
oneWay
Wenn oneWay
auf true
gesetzt ist, gibt diese
Methode nichts zurück. Verwenden Sie diesen Parameter, wenn Sie keine
Antwort erwarten.
Die XML-SOAP-Antwort.
Beispiel #1 SoapClient::__doRequest()-Beispiel
<?php
function Add($x, $y)
{
return $x + $y;
}
class LocalSoapClient extends SoapClient
{
private $server;
public function __construct($wsdl, $options)
{
parent::__construct($wsdl, $options);
$this->server = new SoapServer($wsdl, $options);
$this->server->addFunction('Add');
}
public function __doRequest(
$request,
$location,
$action,
$version,
$one_way = false,
): ?string {
ob_start();
$this->server->handle($request);
$response = ob_get_contents();
ob_end_clean();
return $response;
}
}
$x = new LocalSoapClient(
null,
[
'location' => 'test://',
'uri' => 'http://testuri.org',
]
);
var_dump($x->Add(3, 4));
?>