[英]PHP5 Soap Function does not return, script stops
我正在使用PHP 5进行SOAP调用,在调用之后,无论我作为参数传递什么,soap函数都不会返回任何值,并且脚本的执行似乎停止了。 我已经尝试了,没有尝试,并且没有变化。 我已经传递了空的$ params,非空的params等。
在此行之后:$ client-> getClient($ params);
b有一个回声,它永远不会回声。 就像脚本在调用后刚刚停止运行一样。 没有显示错误,并且在error_log中没有任何显示。 非常沮丧,有什么想法吗?
$ params = array();
$client = new SoapClient("https://sandbox.paymentsgateway.net/WS/Client.wsdl",array(
'soap_version'=>SOAP_1_1,
'exceptions'=>true,
'trace'=>1,
'cache_wsdl'=>WSDL_CACHE_NONE,
'location'=>'https://sandbox.paymentsgateway.net/WS/Client.svc/basic'
));
try
{
echo '4';
$client->getClient($params);
echo 'b';
}
catch (Exception $e)
{
echo $e->getMessage();
}
如果以WSDL模式工作,则不得使用location
-parameter。 它们应该互斥。 尝试删除location
-parameter。
编辑 (因为上面没有帮助):
尝试检查SoapClient
是否可以正确解析WSDL:
print_r($client->__getFunctions());
print_r($client->__getTypes());
是否有任何身份验证,例如WSDL文档上的HTTP身份验证?
您的脚本是否会遇到执行时间或内存限制? 似乎您正在连接到.NET webswervice,并且它们的WSDL往往会变得很大-PHP可能需要一些时间来解析WSDL。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.