Web Service 实例:PHP Web Service

代金券网

Web Service 实例

任何应用程序都可拥有 Web Service 组件。

Web Service 的创建与编程语言的种类无关。

本章节我们将为大家介绍使用 PHP 的 SOAP 扩展来创建 Web Service。

SOAP有两种操作方式,NO-WSDL 与 WSDL。

  • NO-WSDL模式:使用参数来传递要使用的信息。
  • WSDL模式: 使用WSDL文件名作为参数,并从WSDL中提取服务所需的信息。

一个实例:PHP Web Service

在开始实例前,我们需要确定PHP是否安装了 SOAP 扩展。查看 phpinfo,出现以下信息表明已经安装了 SOAP 扩展:

在这个例子中,我们会使用 PHP SOAP 来创建一个简单的 Web Service。

服务端 Server.php 文件代码如下:

<?php   // SiteInfo 类用于处理请求  Class SiteInfo  {      /**       *    返回网站名称       *    @return string        *       */      public function getName(){          return "菜鸟教程";      }        public function getUrl(){          return "www.runoob.com";      }  }    // 创建 SoapServer 对象  $s = new SoapServer(null,array("location"=>"http://localhost/soap/Server.php","uri"=>"Server.php"));    // 导出 SiteInfo 类中的全部函数  $s->setClass("SiteInfo");  // 处理一个SOAP请求,调用必要的功能,并发送回一个响应。  $s->handle();  ?>

客户端 Client.php 文件代码如下:

<?php  try{    // non-wsdl方式调用web service    // 创建 SoapClient 对象    $soap = new SoapClient(null,array('location'=>"http://localhost/soap/Server.php",'uri'=>'Server.php'));    // 调用函数     $result1 = $soap->getName();    $result2 = $soap->__soapCall("getUrl",array());    echo $result1."<br/>";    echo $result2;  } catch(SoapFault $e){    echo $e->getMessage();  }catch(Exception $e){    echo $e->getMessage();  }

这时我们访问 http://localhost/soap/Client.php,输出结果如下:

咸鱼优惠网

www.xyy1.com

1、阿里云产品最新优惠领取地址:立即前往

2、阿里云服务器优惠券领取地址优惠购买地址:点击前往

3、阿里云最新优惠活动地址汇总,共16个,地址:点击前往

4、同配置云产品腾讯云相对便宜,先点此一键领取2860元无门槛满减券(老用户换QQ登陆,同一实名享新人特价),再点此进入腾讯云活动页面12年老码农建议:服务器升级、复购、续费贵,数据迁移也麻烦,建议用好新人优惠资格,买多年,配置一次性到位,后期省事又省钱。


评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注