首先大家要简单了解了何谓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.php try { $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; } 以上代码我已经测试通过。 |
php webservice实例(转载)
最新推荐文章于 2021-03-28 06:19:36 发布