Adding htmlentities() can be helpful since it makes the XML visible in your browser without needing to view the source.
<?php
echo "REQUEST:\n" . htmlentities($client->__getLastRequest()) . "\n";
?>
SoapClient::__getLastRequest
(PHP 5 >= 5.0.1)
SoapClient::__getLastRequest — Devuelve la última petición SOAP
Descripción
public string SoapClient::__getLastRequest
( void
)
Devuelve el XML enviado en la última petición SOAP.
Nota:
Este método solo funciona si el objecto SoapClient fue creado con la opción trace establecida a
TRUE.
Parámetros
Esta función no tiene parámetros.
Valores devueltos
La última petición SOAP, como cadena XML.
Ejemplos
Ejemplo #1 Ejemplo de SoapClient::__getLastRequest()
<?php
$client = SoapClient("some.wsdl", array('trace' => 1));
$result = $client->SomeFunction();
echo "REQUEST:\n" . $client->__getLastRequest() . "\n";
?>
Ver también
- SoapClient::__getLastRequestHeaders() - Devuelve los encabezados SOAP de la última petición
- SoapClient::__getLastResponse() - Devuelve la última respuesta SOAP
- SoapClient::__getLastResponseHeaders() - Devuelve los encabezados SOAP de la última respuesta
Anonymous ¶
3 years ago
Ersin DOGAN ¶
4 years ago
I guess many peoples calls getLastRequest and it returns nothing. "Heey where is the my last request". Now we will see our request, when you created a SoapClient instance, you should give a option parameter as below :
<?php
// below $option=array('trace',1);
// correct one is below
$option=array('trace'=>1);
$client=new SoapClient('some.wsdl',$option);
try{
$client->aMethodAtRemote();
}catch(SoapFault $fault){
// <xmp> tag displays xml output in html
echo 'Request : <br/><xmp>',
$client->__getLastRequest(),
'</xmp><br/><br/> Error Message : <br/>',
$fault->getMessage();
}
?>
"trace" parameter enables output of request. Now, you should see SOAP request.
Omar Nabil ¶
4 years ago
the getLastResult function doesn't require that the server answers.
as my browser handled and hided the xml code I thought the function doesn't return the last request
