(PHP 5, PHP 7, PHP 8)
SoapClient::__doRequest — Executa uma solicitação SOAP
$request,$location,$action,$version,$oneWay = falseExecuta solicitação SOAP por HTTP.
Este método pode ser substituído em subclasses para implementar diferentes camadas de transportes, realizar processamento XML adicional ou outra finalidade.
requestA solicitação XML SOAP.
locationO URL a ser solicitado.
actionA ação SOAP.
versionA versão SOAP.
oneWay
Se oneWay estiver definido como true, este método não retornará nada.
Use isto onde uma resposta não é esperada.
A resposta XML SOAP.
Exemplo #1 Exemplo de SoapClient::__doRequest()
<?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));
?>