查看: 5055|回复: 0
打印 上一主题 下一主题

PHP SOAP!

[复制链接]
跳转到指定楼层
1#
发表于 2007-10-5 15:21:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
台州网址导航
庆祝我从此又可以使用PHP5玩了

玩过了Zend XmlRpc,再玩PHP5的SOAP基本上没有太多的问题,一下的示例基本上是一次成功的!

玩SOAP,最麻烦的莫过于WSDL的编写(这才是我一向偏向于使用XMLRPC的原因),我一直认为那玩意儿不是人写的,昨天我才发现,的确那玩意儿是不需要人写的,除去了WSDL,说实话SOAP和XMLRPC几乎一样简单,甚至说更简单些(他的异常处理更完善,出错信息对调试更方便,友好)

我们先定义一个类(文件 Culculator.php):

class Culculator
{
    /**
      * 求和
      *
      * @param float $x
      * @param float $y
      * @return float
      */
    public function add($x, $y)
     {
         return $x + $y;
     }
}

创建WSDL:这项是最麻烦的过程,但是,利用Zend Studio,一行xml也不用写,就能轻松搞定

流程:

Tools ==> WSDL Generator ==> Configration name : wps2000; WSDL file name: wps ==>NEXT ==> 点击 +   ==> 选择上面的创建的Culculator.php ==> 这时候会看到一个 classes   : URL Location的映射,保留 Culculator 类前面的勾,并将其url 设置为 SOAP Server的url:http://localhost/server.php ==>点击Finish,ZDE就会创建一个非常漂亮的WSDL了   工作基本上完成了,庆祝下

拷贝那个wps.wsdl文件(默认在我的文档中)到Document Root文件夹下,创建 SOAP Server: server.php

<?php
require './Culculator.php';

$server = new SoapServer('./wps.wsdl');
$server->setClass('Culculator');
$server->handle();
?>

创建SOAP客户端(client.php)

<?php

$soap = new SoapClient('./wps.wsdl');
echo $soap->add(1.2, 2.4);

运行输出 3.6,一切正常!

SOAP比XmlRpc好的就是,在使用ZDE编写的时候,居然可以出现代码补全(显示SoapServer上的方法),看来那个麻烦的WSDL也不是一无是处哦
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

网站推广
关于我们
  • 台州朗动科技(Tzweb.com)拥有多年开发网站平台系统门户手机客户端等业务的成功经验。主要从事:政企网站,系统平台,微信公众号,各类小程序,手机APP客户端,浙里办微应用,浙政钉微应用、主机域名、虚拟空间、后期维护等服务,满足不同企业公司的需求,是台州地区领先的网络技术服务商!

Hi,扫描关注我

Copyright © 2005-2026 站长论坛 All rights reserved

Powered by 站长论坛 with TZWEB Update Techonolgy Support

快速回复 返回顶部 返回列表