Você está aqui: PHP ::: PHP + SOAP Web Services ::: SoapClient |
Como usar o método getFunctions() da classe SoapClient para retornar uma lista das funções descritas em um arquivo WSDLQuantidade de visualizações: 3661 vezes |
|
Em algumas situações gostaríamos de obter mais informações sobre as funções descritas em um arquivo WSDL (Web Services Definition Language). Não é sempre que temos a documentação do serviço web (ou estamos mesmo sem vontade de fazer a leitura do mesmo). A classe SoapClient nos fornece uma forma fácil de obter tal informação por meio do seu método getFunctions(). Veja sua assinatura: public array SoapClient::__getFunctions(void) Veja que o método não requer nenhum argumento e retorna um array contendo as funções descritas no WSDL. Observe o trecho de código a seguir:
<?
// vamos evitar que o arquivo WSDL seja colocado no cache
ini_set("soap.wsdl_cache_enabled", "0");
try{
// definimos o endereço do arquivo WSDL
$cliente = new SoapClient(
'http://www.arquivodecodigos.net/estudos_soap/calculos.wsdl');
// vamos obter a lista de funções descritas no WSDL
$funcoes = $cliente->__getFunctions();
// e exibimos o resultado
var_dump($funcoes);
}
catch(SoapFault $erro){ // houve algum erro?
var_dump($e);
}
?>
Ao executarmos este código teremos o seguinte resultado (assumindo que você tenha informado o endereço de um arquivo WSDL válido e que contenha a descrição de no mínimo uma função):
array(2) {
[0]=>
string(31) "float somar(float $a, float $b)"
[1]=>
string(37) "float multiplicar(float $a, float $b)"
}
Neste exemplo nós temos o retorno de duas funções: somar() e multiplicar(). Veja que os parâmetros e retornos são do tipo float. Veja agora o resultado deste código aplicado ao WSDL no endereço http://www.webservicex.net/CurrencyConvertor.asmx?WSDL:
array(2) {
[0]=>
string(65) "ConversionRateResponse
ConversionRate(ConversionRate $parameters)"
[1]=>
string(65) "ConversionRateResponse
ConversionRate(ConversionRate $parameters)"
}
Veja que agora o retorno e o parâmetro são tipos mais complexos que float e double. Nestes casos específicos a documentação do web service é sempre bem-vinda. |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





