Chama uma função SOAP

# SoapClient::__soapCall

(PHP 5, PHP 7, PHP 8)

SoapClient::__soapCall — Chama uma função SOAP

### Descrição

public function SoapClient::__soapCall(
string `$name`,
array `$args`,
?array `$options` = `null`,
SoapHeader|array|null `$inputHeaders` = `null`,
array `&$outputHeaders` = `null`
): mixed

Esta é uma função API de baixo nível usada para fazer uma chamada SOAP. Geralmente, no modo WSDL, as funções SOAP podem ser chamadas como métodos do Objeto SoapClient. Este método é útil em modo não WSDL quando `soapaction` é desconhecido, `uri` difere do padrão ou ao enviar e/ou receber cabeçalhos SOAP.

Em caso de erro, uma chamada para uma função SOAP pode fazer com que o PHP lance exceções ou retorne um Objeto SoapFault se as exceções estiverem desabilitadas. Para verificar se a chamada de função falhou ao capturar as exceções SoapFault, verifique o resultado com is_soap_fault().

### Parâmetros

`name`

  O nome da função SOAP a ser chamada.

`args`

  Um array dos argumentos a serem passados para a função. Isso pode ser um array ordenado ou associativo. Observe que a maioria dos servidores SOAP exigem nomes de parâmetros a serem fornecidos; nesse caso, este deve ser um array associativo.

`options`

  Um array associativo de opções a serem passadas ao cliente.

  A opção `location` é a URL do serviço Web remoto.

  A opção `uri` é o namespace de destino do serviço SOAP.

  A opção `soapaction` é a ação a ser chamada.

`inputHeaders`

  Um array de cabeçalhos a serem enviados junto com a solicitação SOAP.

`outputHeaders`

  Se fornecido, esse array será preenchido com os cabeçalhos da resposta SOAP.

### Valor Retornado

As funções SOAP podem retornar um ou vários valores. Se apenas um valor for retornado pela função SOAP, o valor de retorno será um escalar. Se vários valores forem retornados, um array associativo de parâmetros nomeados de saída são retornados em vez disso.

Em caso de erro, se o objeto SoapClient foi construído com a opção `exceptions` definida como `false`, um objeto SoapFault será retornado.

### Exemplos

Exemplo #1 Exemplo de SoapClient::__soapCall()

    <?php

    $client = new SoapClient("some.wsdl");
    $client->SomeFunction($a, $b, $c);

    $client->__soapCall("SomeFunction", array($a, $b, $c));
    $client->__soapCall("SomeFunction", array($a, $b, $c), NULL,
                        new SoapHeader(), $output_headers);

    $client = new SoapClient(null, array('location' => "http://localhost/soap.php",
                                         'uri'      => "http://test-uri/"));
    $client->SomeFunction($a, $b, $c);
    $client->__soapCall("SomeFunction", array($a, $b, $c));
    $client->__soapCall("SomeFunction", array($a, $b, $c),
                        array('soapaction' => 'some_action',
                              'uri'        => 'some_uri'));
    ?>

### Veja Também

- SoapClient::__construct() - Construtor de SoapClient
- SoapParam::__construct() - Construtor SoapParam
- SoapVar::__construct() - Construtor SoapVar
- SoapHeader::__construct() - Construtor SoapHeader
- SoapFault::__construct() - Construtor SoapFault
- is_soap_fault() - Verifica se uma chamada SOAP falhou

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open