(PHP 5, PHP 7, PHP 8)
SoapClient::__doRequest — Performs a SOAP request
$request
,$location
,$action
,$version
,$oneWay
= false
Performs SOAP request over HTTP.
This method can be overridden in subclasses to implement different transport layers, perform additional XML processing or other purpose.
request
The XML SOAP request.
location
The URL to request.
action
The SOAP action.
version
The SOAP version.
oneWay
If one_way
is set to 1, this method returns nothing.
Use this where a response is not expected.
The XML SOAP response.
Version | Description |
---|---|
8.0.0 |
The type of oneWay is bool now; formerly it was int.
|
Example #1 SoapClient::__doRequest() example
<?php
function Add($x,$y) {
return $x+$y;
}
class LocalSoapClient extends SoapClient {
function __construct($wsdl, $options) {
parent::__construct($wsdl, $options);
$this->server = new SoapServer($wsdl, $options);
$this->server->addFunction('Add');
}
function __doRequest($request, $location, $action, $version, $one_way = 0) {
ob_start();
$this->server->handle($request);
$response = ob_get_contents();
ob_end_clean();
return $response;
}
}
$x = new LocalSoapClient(NULL,array('location'=>'test://',
'uri'=>'http://testuri.org'));
var_dump($x->Add(3,4));
?>