使用try catch 捕获Soap 异常
<?php
try{
$options = array (
'uri' => ,
'location' => , //注意: 这个location指定的是server端代码在服务器中的具体位置, 我的是在本地根目录下的soap目录中,
'trace' => true,
);
$client = new SoapClient ( null, $options );
//SoapHeader 身份认证。让具体指定用户口令的用户来访问我们的web服务接口。
$header = new SoapHeader ( 'namespace', 'auth', 'key', false, SOAP_ACTOR_NEXT );
$client->__setSoapHeaders ( array ($header ) );
$wsdl_array = json_encode ( $arg );
$output = $client->__soapCall ($action, array ($wsdl_array ) ); //__soapCall 服务器端调用的方法和传递过去的值。
return json_decode ( $output, true );
}catch(SoapFault $e){
echo $client->__getLastRequest();
echo $client->__getLastResponse();
}
?>