手记

php 操作webservice实例

首先大家要简单了解了何谓webservice,接下来就做两个非常简单的例子,webservice还是逃不开server端与client端。
我测试的环境为:apache2.2.11 php5.2.10
做这个测试之前,要确认你的php配置文件中已经将soap扩展打开,即extension=php_soap.dll;

OK 现在我们来体验webservice

//server端 serverSoap.php                                          $soap = new SoapServer(null,array('uri'=>"http://192.168.1.179/"));//This uri is your SERVER ip.$soap->addFunction('minus_func');                                                 //Register the function$soap->addFunction(SOAP_FUNCTIONS_ALL);$soap->handle();                                          function minus_func($i, $j){    $res = $i - $j;    return $res;}                                          //client端 clientSoap.phptry {    $client = new SoapClient(null,        array('location' =>"http://192.168.1.179/test/serverSoap.php",'uri' => "http://127.0.0.1/")    );    echo $client->minus_func(100,99);                                          } catch (SoapFault $fault){    echo "Error: ",$fault->faultcode,", string: ",$fault->faultstring;}

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

//server端 serverSoap.php$classExample = array();                                $soap = new SoapServer(null,array('uri'=>"http://192.168.1.179/",'classExample'=>$classExample));$soap->setClass('chesterClass');$soap->handle();                                class chesterClass {    public $name = 'Chester';                                    function getName() {        return $this->name;    }}                                //client端 clientSoap.php                                try {    $client = new SoapClient(null,        array('location' =>"http://192.168.1.179/test/serverSoap.php",'uri' => "http://127.0.0.1/")    );    echo $client->getName();                                } catch (SoapFault $fault){    echo "Error: ",$fault->faultcode,", string: ",$fault->faultstring;}



0人推荐
随时随地看视频
慕课网APP