(PHP 5, PHP 7, PHP 8)
is_soap_fault — 检查 SOAP 调用是否失败
此函数用于检查 SOAP 调用是否失败,但不使用异常。要使用它,请使用 exceptions
选项设置为零或 **false
** 创建一个 SoapClient 对象。在这种情况下,SOAP 方法将返回一个特殊的 SoapFault 对象,该对象封装了错误详细信息(faultcode、faultstring、faultactor 和 faultdetails)。
如果未设置 exceptions
,则 SOAP 调用将在出错时抛出异常。 is_soap_fault() 检查给定参数是否为 SoapFault 对象。
object
要测试的对象。
示例 #1 is_soap_fault() 示例
<?php
$client = new SoapClient("some.wsdl", array('exceptions' => 0));
$result = $client->SomeFunction();
if (is_soap_fault($result)) {
trigger_error("SOAP 错误: (错误代码: {$result->faultcode}, 错误信息: {$result->faultstring})", E_USER_ERROR);
}
?>
示例 #2 SOAP 的标准错误报告方法是异常
<?php
try {
$client = new SoapClient("some.wsdl");
$result = $client->SomeFunction(/* ... */);
} catch (SoapFault $fault) {
trigger_error("SOAP 错误: (错误代码: {$fault->faultcode}, 错误信息: {$fault->faultstring})", E_USER_ERROR);
}
?>