PHP SOAP第二个请求没有';Don’不要抛出异常


PHP SOAP Second request doesn't throw an exception

我正在尝试连接到Web服务。我的webserviceHelper是:

class webserviceHelper {
 public function __construct($params) {
        $this->service_url = $params['service_url'];
        try {
            $this->soap = new SoapClient($this->service_url, 
                                    array('exceptions' => true));
        } 
        catch (SoapFault $exc) {
            echo 'SoapFault<br />';
            die;
        }
        catch (Exception $exc) {
            echo 'Exception<br />';
            die;
        } 
    }
    ...
}

当服务关闭时,我向创建webserviceHelper对象的页面发出请求。在响应之前,我对同一页面进行第二次请求。第一次,我得到了"soapFault"作为输出,但在第二次,我收到了一个致命的错误。

Fatal error: SOAP-ERROR: Parsing WSDL: Couldn't load from 'WebService?wsdl' : failed to load external entity "WebService?wsdl" in webserviceHelper.php on line 40

如何防止此错误?

$this->soap = new SoapClient(.....之后使用error_get_last()获取潜在错误

我通过在codeigniter中使用钩子来处理它。感谢博客作者。如何在CodeIgniter 中捕获PHP致命错误