THINKPHP3.2 中使用 soap 连接webservice 解决方案

今天使用THINKPHP3.2 框架中开发时使用soap连接webservice 一些浅见现在分享一下,

1.首先我们要在php.ini 中开启一下

 php_openssl.dll

 php_soap.dll

 

2.在方法中创建的 SoapClient 类 的实例

 $url="https://www.test.com/adwebservice.asmx?wsdl";

 $client = new \SoapClient($url);

 

3.然后调用webservice 接口方法

 1  //获取webservice 接口方法
 2 
 3 $client->__getFunctions (); 
 4 
 5 //获取webservice接口方法的参数类型
 6 $client->__getTypes ();
 7 
 8 //执行调用方法
 9 
10 $aryResult = $client->ChangePassword($methodparam);
11  var_dump($aryResult);//打印结果

 

 

4.完整代码如下

 1 class WebseviceSoap
 2 {
 3     public function WebService($url,$methodparam=array()){
 4         try{
 5              header("content-type:text/html;charset=UTF-8");
 6             $client = new \SoapClient($url);
 7             //$client->__getFunctions ();
 8             //$client->__getTypes ();
 9             // 参数转为数组形式传
10             // 调用远程函数
11             $aryResult = $client->ChangePassword($methodparam);
12             return (array)$aryResult;
13         }catch(Exception $e){
14             $aryResult="";
15         }
16         return $aryResult;
17     }
18 }

 

posted @ 2017-04-25 11:09  KingZhou1990  阅读(3364)  评论(0编辑  收藏  举报