SoapClient::__doRequest

(PHP 5, PHP 7)

SoapClient::__doRequestВыполняет SOAP-запрос

Описание

public SoapClient::__doRequest ( string $request , string $location , string $action , int $version , bool $oneWay = false ) : string|null

Выполняет SOAP-запрос поверх HTTP.

Этот метод может быть переопределен в подклассах для реализации других транспортных уровней, выполнения дополнительной обработки XML или других целей.

Список параметров

request

Запрос XML SOAP.

location

URL для запроса.

action

Действие SOAP.

version

Версия SOAP.

oneWay

Если oneWay равен 1, метод ничего не возвращает. Этот параметр используется, когда не ожидается ответа.

Возвращаемые значения

Ответ XML SOAP.

Список изменений

Версия Описание
8.0.0 Тип oneWay теперь bool; раньше он был целым чилом (int).

Примеры

Пример #1 Пример использования SoapClient::__doRequest()

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