(PHP 5, PHP 7, PHP 8)
SoapClient::__doRequest — Ejecuta una solicitud SOAP
$request
,$location
,$action
,$version
,$oneWay
= false
Ejecuta una solicitud SOAP.
Este método puede ser sobrescrito en las subclases para implementar diferentes transportes, realizar operaciones XML adicionales o cualquier otra cosa.
request
La solicitud SOAP en XML.
location
La URL de la solicitud.
action
La acción SOAP.
version
La versión SOAP.
oneWay
Si oneWay
toma el valor de true
,
este método no devuelve nada. Utilice este valor
cuando no se espera una respuesta.
La respuesta SOAP en XML.
Versión | Descripción |
---|---|
8.0.0 |
El tipo de oneWay es booléen ahora; anteriormente era entier.
|
Ejemplo #1 Ejemplo con 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));
?>