SoapClient::__soapCall
(PHP 5, PHP 7, PHP 8)
SoapClient::__soapCall — Chama uma função SOAP
Descrição
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
Example #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 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