php使用soap的例子

发布时间:2019-12-25编辑:脚本学堂
本文介绍下,php编程中使用soap的例子,php提供一个soap操作的扩展库,可以直接在php中进行soap的操作,有需要的朋友参考下。

php提供了了一个专门用于soap操作的扩展库,使用该扩展库后可以直接在php中进行soap操作。
从php5.0后,php就自带了soap的支持。

在php.ini文件中如下代码,去掉前面的注释(;)。
;extension=php_soap.dll
修改后,重启机器即可激活soap扩展。

以下是调用的例子:
1、SoapServer

复制代码 代码示例:
$soap = new SoapServer($wsdl,$array);

2、SoapClient

复制代码 代码示例:
$soap = new SoapClient($wsdl,$array);

3、SoapFault

复制代码 代码示例:
$fault = new SoapFault($faultcode,$faultstring);

两种引用方式:
方式1,引入wsdl文件。
方式2,不使用wsdl文件。

以下的例子便是不使用wsdl文件的方式。

服务器端代码:

<?php 
class service 
{ 
  public function HelloWorld() 
   { 
      return  "Hello"; 
   } 
  public  function Add($a,$b) 
   { 
      return $a+$b; 
   } 
} 
$server=new SoapServer(null,array('uri' => "abcd")); 
$server->setClass("service"); 
$server->handle(); 
?> 

客户端代码:

<?php 
try{ 
$soap = new SoapClient(null,array( 
"location" => "http://localhost/interface/soap.php", 
"uri"      => "abcd",  //资源描述符服务器和客户端必须对应 
"style"    => SOAP_RPC, 
"use"      => SOAP_ENCODED 
   )); 

echo $soap->Add(1,2); 
}catch(Exction $e){ 
echo print_r($e->getMessage(),true); 
} 
?>