[PHP学习]论PHP调用.net的webservice接口所碰到的坑

时间:2022-09-30 16:21:19

Wampserver配置:

修改php.ini  ;extension=php_soap.dll

那么首先写一个简单的服务端的测试方法

 $url_webservice=C('URL_webservice');  // 接口
$client = new \SoapClient($url_webservice.'/flowservice.asmx?wsdl',array('encoding'=>'UTF-8'));
// 参数数组(用于具体方法)
$aryPara = array('vkorg'=>$keycol3, 'kkber'=>$keycol4,'flowid'=>$flowid,'sysno'=>$flowmap);
$getHtmlmap = $client->GetUserRelation($aryPara); // 调用接口里面的方法
通过调用接口获得数据。

但在调试过程中,会发现很多方法不起作用,显示不存在或可不用,即是服务器端PHP的soap的WSDL缓存造成的,下面提供的修改方法:

soap.wsdl_cache_enabled=1(改为0)
soap.wsdl_cache_ttl=86400(改为0)
重启Wamp,然后接口的方法即可用,同时客户端以及服务器端的机器都需修改。