Php/docs/soapclient.dorequest

来自菜鸟教程
跳转至:导航、​搜索

SoapClient::__doRequest

(PHP 5, PHP 7)

SoapClient::__doRequestPerforms a SOAP request


说明

public SoapClient::__doRequest ( string $request , string $location , string $action , int $version [, int $one_way = 0 ] ) : string

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.
one_way
If one_way is set to 1, this method returns nothing. Use this where a response is not expected.


返回值

The XML SOAP response.


范例

Example #1 SoapClient::__doRequest() example

<?phpfunction 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));?>