PHP如何调用webservice接口11


近日一项目中需要使用php调用web service接口进行开发,因为以前没有接触过这种项目,于是乎百度,谷歌了一番,数小时的研究基本上已经对这方面有了个初步的认识。先初步的总结一下。关于php调用web service接口其实主要用到的是php的一个内置处理soap的模块,整个过程还是比较easy的。下面是自己写的一个小例子,仅供参考。

  1. <?php 
  2. $soap=new SoapClient('http://www.daimajiayuan.com/javascript-function/677.html/service/searchFlightService2.0?wsdl'); 
  3. //$soap=new SoapClient('http://www.daimajiayuan.com/javascript-function/677.html/service/searchFlightService2.0?wsdl',array('encoding'=>'UTF-8'));带参数的调用方式 
  4. echo '<pre>'; 
  5. print_r($soap->__getFunctions());//列出当前SOAP所有的方法,参数和数据类型,也可以说是获得web service的接口 
  6. print_r($soap->__getTypes());//列出每个web serice接口对应的结构体 
  7. class searchFlightResponse{ 
  8.     var $qqCode='10000'; 
  9. }; 
  10. $searchFlightResponse_array=array(new searchFlightResponse); 
  11. $result=$soap->__Call('searchFlight',$searchFlightResponse_array); 
  12. //上面的调用方式也可以写做 $soap->searchFlight($searchFlightResponse_array); 
  13. print_r($result); 
  14. ?> 

代码其实很简单,创建SoapClient对象时,可以使用保存在本地WSDL文件,也可以使用远程的地址,后面的array数组里可以带上很多的参数,具体参数可以查php的SoapClient帮助,这里带的是字符集编码,如果调用方法的参数里有中文,一定要指定字符集编码,否则会出错。

转载请注明:代码家园 » PHP如何调用webservice


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM