PHP soap实例(二)

 服务器端的编写
 实现的Soap服务器端的功能是提供给客户端用来调用的函数,接受客户端传入的参数,并将
处理结果返回客户端。函数的功能为返回参数的和,文件名为soapServer.php具体代码如下所示:
 <?php
 
/**
     * @Soap实例二 服务端(Server)示例
     * @author PHP技术博客,PHP博客,WWW.PHPCQ.COM
     */
 
function soap_add($num1,$num2){
    if (
trim($num1) != (int)$num2 || trim($num2) != (int)$num2) {
        return new 
SoapFault('1','用户数据非法!');
    } else {
        return 
$num1 $num2;
    }
}
$soapServer = new SoapServer(null,array('url'=>'soap'));//创建SoapServer对象
$soapServer->addFunction('soap_add');//注册服务函数
$soapServer->handle();//处理并生成Soap
上面代码编写了一个soap_add函数用于实现两个参数的和,并且该页面支持客户端远程调用。

客户端的编写
<?php
 
/**
     * @Soap实例二 客户端(Client)示例
     * @author PHP技术博客,PHP博客,WWW.PHPCQ.COM
     */
try {
    
    
//创建客户端实例
    
$soapClient = new SoapClient(null,
                        array(
'location'=>'http://www.phpcq.com/soapServer.php',
                        
'uri'=>'soap'));
    
$num1 1$num2 2;
    
$sum $soapClient->soap_add($num1,$num2);
    echo 
$num1 $num2 $sum;                    
} catch (
SoapFault $fault){
    echo 
"错误[$fault->faultcode:$fault->faultstring]";
}
客户端代码使用try...catch()语句实现了Soap访问服务端过程中可能会出现的错误,并在错误发生时将错误
以合适的格式输出。

      
      

关于PHP博客

PHP blogger

博客-致力于分享PHP技术的开发心得, 记录站长生活的点点滴滴,PHP博客采用PHP 面向对象编程+Smarty模板引擎+Mysql数据库 开发(全站纯静态化与伪静态化)
QQ:334192009
电邮:admin@PHPdesigner.org

本站搜索

本站最新文章

博客最近档案

友情链接