今天使用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 }