当前位置:首页 > PHP教程 > php高级应用 > 列表

php实现webservice实例

发布:smiling 来源: PHP粉丝网  添加日期:2021-04-24 14:10:42 浏览: 评论:0 

这篇文章主要介绍了php实现webservice的方法,以实例形式讲述了webservice的原理与实现技巧,需要的朋友可以参考下。

本文实例讲述了php实现webservice的方法。分享给大家供大家参考。具体实现方法如下:

首先大家要简单了解何谓webservice,接下来就做两个非常简单的例子,webservice还是逃不开server端与client端。

这里的测试环境为:apache2.2.11 php5.2.10

做这个测试之前,要确认你的php配置文件中已经将soap扩展打开,即:

extension=php_soap.dll;

OK 现在我们来体验webservice

server端 serverSoap.php,代码如下:

  1. $soap = new SoapServer(null,array('uri'=>"http://192.168.1.179/"));//This uri is your SERVER ip. 
  2. $soap->addFunction('minus_func');                                                 //Register the function 
  3. $soap->addFunction(SOAP_FUNCTIONS_ALL); 
  4. $soap->handle(); 
  5. function minus_func($i$j){ 
  6.     $res = $i - $j
  7.     return $res
  8. }//www.phpfensi.com 
  9. //client端 clientSoap.php 
  10. try { 
  11.     $client = new SoapClient(null, 
  12.         array('location' =>"http://192.168.1.179/test/serverSoap.php",'uri' => "http://127.0.0.1/"
  13.     ); 
  14.     echo $client->minus_func(100,99); 
  15. } catch (SoapFault $fault){ 
  16.     echo "Error: ",$fault->faultcode,", string: ",$fault->faultstring; 

这是客户端调用服务器端函数的例子,我们再搞个class的。

server端 serverSoap.php 代码如下:

  1. $classExample = array(); 
  2. $soap = new SoapServer(null,array('uri'=>"http://192.168.1.179/",'classExample'=>$classExample)); 
  3. $soap->setClass('chesterClass'); 
  4. $soap->handle(); 
  5. class chesterClass { 
  6.     public $name = 'Chester'
  7.     function getName() { 
  8.         return $this->name; 
  9.     }//www.phpfensi.com 
  10. //client端 clientSoap.php 
  11. try { 
  12.     $client = new SoapClient(null, 
  13.         array('location' =>"http://192.168.1.179/test/serverSoap.php",'uri' => "http://127.0.0.1/"
  14.     ); 
  15.     echo $client->getName(); 
  16. } catch (SoapFault $fault){ 
  17.     echo "Error: ",$fault->faultcode,", string: ",$fault->faultstring; 

希望本文所述对大家的PHP程序设计有所帮助。

Tags: webservice

分享到: