利用nusoap生成wsdl文件

 

第一步,首先下载 nusoap.php  

下载地址  http://sourceforge.net/projects/nusoap/files/nusoap/

server.php  文件 

<?php   

    include_once "lib/nusoap.php"; //导入nusoap.php,本站放在lib目录下    
// Create the server instance 
$server = new soap_server(); 
// Initialize WSDL support 
$server->configureWSDL('registerwsdl', 'urn:registerwsdl'); 
// Register the method to expose 
$server->register('register',                // method name 
    array('username' => 'xsd:string','game_id' => 'xsd:int','fromurl' => 'xsd:string','advertiser' => 'xsd:string','adFrom' => 'xsd:string','adType' => 'xsd:string','pageName' => 'xsd:string','wordid' => 'xsd:string','ip' => 'xsd:string','registertime' => 'xsd:time'),        // input parameters 
    array('return' => 'xsd:array'),      // output parameters 
    'urn:registerwsdl',                      // namespace 
    'urn:registerwsdl#register',                // soapaction 
    'rpc',                                // style 
    'encoded',                            // use 
    'Says hello to the caller'            // documentation 
); 
// Define the method as a PHP function 

   function register($username, $game_id, $fromurl, $advertiser, $adFrom, $adType, $pageName, $wordid, $ip, $registertime) {
        $param = array(
            'tg_account' => $username,
            'tg_gameID' => $game_id,
            'tg_advertiser' => $advertiser,
            'tg_adFrom'=>$adFrom,
            'tg_pageParam' => $fromurl,
            'tg_adType' => $adType,
            'tg_pageName' => $pagename,
            'tg_adsID' => $wordid,
            'tg_ip' => $ip,
            'tg_registerTime' => $registertime
        );
        return $param;
}       
// Use the request to (try to) invoke the service 
$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : ''; 
$server->service($HTTP_RAW_POST_DATA); 

?> 

以上是生成wsdl的文件的方式,还有一种方法是说利用zend studio 7生成

第二步就是写php的服务端的接口

wsdl.php

<?php

class Wsdl extends CI_Controller {

    function __construct() {
        parent::__construct();
        $this->load->model('tganalysis/register_analysis_model');
    }

    function register($username, $gameid, $fromurl, $advertiser, $adfrom, $pagetype, $pagename, $tgid, $ip, $registertime) {
        //保存注册信息
        $this->register_analysis_model->tg_account = strtoupper($username);
        $this->register_analysis_model->tg_gameID = $gameid;
        $this->register_analysis_model->tg_fromurl = urldecode($fromurl);
        $this->register_analysis_model->tg_advertiser = $advertiser; //广告商投放id
        $this->register_analysis_model->tg_adFrom = $adfrom;
        $this->register_analysis_model->tg_pagetype = $pagetype;
        $this->register_analysis_model->tg_pagename = $pagename;
        $this->register_analysis_model->tg_tgid = $tgid;
        $this->register_analysis_model->tg_ip = $ip;
        $this->register_analysis_model->tg_registerTime = date('Y-m-d H:i:s', $registertime);
        try {
            $this->register_analysis_model->save_tg_register();
        } catch (SoapFault $e) {
            return $e->getMessage();
        }
        return 0;
    }

    function index() {
        ini_set("soap.wsdl_cache_enabled", "0");
        $server = new SoapServer(APPPATH . 'libraries/data/tgRegister.wsdl', array('uri' => "http://gwact.woniu.com/jwl/wsdl?wsdl", 'encoding' => 'utf-8'));
        $server->setClass("wsdl");
        $server->addFunction(array('register'));
        $server->addFunction(SOAP_FUNCTIONS_ALL);
        $server->handle();
    }

}
?>

最后说明以上经过实践证明可以使用,具体的根据自己的情况修改

转载于:https://my.oschina.net/u/217063/blog/52449

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值