D'oh!
That example needs:
$soapClient = new SoapClient($url, array('trace'=>1));
to turn ON tracing in the first place.
SoapClient::__getLastResponse
(PHP 5 >= 5.0.1)
SoapClient::__getLastResponse — Returns last SOAP response
Descrição
public string SoapClient::__getLastResponse
( void
)
Returns the XML sent in the last SOAP response.
Nota: This method works only if the SoapClient object was created with the trace option set to TRUE.
Parâmetros
Esta função não contém parâmetros.
Valor Retornado
The last SOAP response, as an XML string.
Exemplos
Exemplo #1 SoapClient->__getLastResponse() example
<?php
$client = SoapClient("some.wsdl", array('trace' => 1));
$result = $client->SomeFunction();
echo "Response:\n" . $client->__getLastResponse() . "\n";
?>
Veja Também
- SoapClient::__getLastResponseHeaders - Returns the SOAP headers from the last response
- SoapClient::__getLastRequest - Returns last SOAP request
- SoapClient::__getLastRequestHeaders - Returns the SOAP headers from the last request
SoapClient::__getLastResponse
ceo at l-i-e dot com
04-Jan-2006 09:31
04-Jan-2006 09:31
ceo at l-i-e dot com
04-Jan-2006 09:30
04-Jan-2006 09:30
You almost for sure will need to wrap a try/catch block around your SOAP call in order to use these to debug something that's not working.
Otherwise, PHP throws a fatal error before you can execute this function.
For example:
<?php
$soapClient = new SoapClient($url);
echo htmlentities($soapClient->__getFunctions());
//Assume that has output 'someFunction' (among others)
try {
$results = $soapClient->someFunction(...);
}
catch (SoapFault $soapFault) {
var_dump($soapFault);
echo "Request :<br>", htmlentities($soapClient->__getLastRequest()), "<br>";
echo "Response :<br>", htmlentities($soapClient->__getLastResponse()), "<br>";
}
?>
Without try/catch, your just get the Fatal Error and PHP commits suicide before you can call __getLastRequest/__getLastResponse
