(PHP 5, PHP 7, PHP 8)
is_soap_fault — Comprueba si una llamada SOAP ha fallado
Esta función es útil para comprobar si la llamada SOAP ha fallado,
pero sin usar excepciones. Para usarse, cree el objecto
SoapClient con la opción exceptions
definida a cero o false
.
En este caso, el método SOAP devolverá un objecto especial
SoapFault el qual encapsula los datos del fallo
(faultcode, faultstring, faultactor and faultdetails).
Si exceptions
no está definido la llamada SOAP lanzará
una excepción al producirse un error.
is_soap_fault() comprueba si un parametro dado
es un objecto SoapFault.
object
El objecto a comprobar.
Devolverá true
si se produce un error y false
en caso contrario.
Ejemplo #1 Ejemplo de is_soap_fault()
<?php
$client = new SoapClient("some.wsdl", array('exceptions' => 0));
$result = $client->SomeFunction();
if (is_soap_fault($result)) {
trigger_error("SOAP Fault: (faultcode: {$result->faultcode}, faultstring: {$result->faultstring})", E_USER_ERROR);
}
?>
Ejemplo #2 El método estándar de SOAP para el informe de errores con las excepciones
<?php
try {
$client = new SoapClient("some.wsdl");
$result = $client->SomeFunction(/* ... */);
} catch (SoapFault $fault) {
trigger_error("SOAP Fault: (faultcode: {$fault->faultcode}, faultstring: {$fault->faultstring})", E_USER_ERROR);
}
?>