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

Posted King.Chou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 }

 

以上是关于THINKPHP3.2 中使用 soap 连接webservice 解决方案的主要内容,如果未能解决你的问题,请参考以下文章

ThinkPHP3.2.3 M函数和D函数的区别

thinkphp3.2连接 Postgres SQL

使用 Swift Alamofire 从 SOAP 中提取 JSON 数据

thinkphp3.2.3怎么插入数据库

thinkphp3.2 连接Mysql5 报错 服务器向客户端发送未知的字符集。

thinkphp3.2.3 版本使用redis缓存添加认证