background image

PHP SOAP 调用.net 的 WebService 数据的实例代码

分享一例

php 代码,使用 SOAP 调用.net 的 WebService 数据,学习 php SOAP 的用法,感兴

趣的朋友不妨参考学习下。

本节内容:
SOAP 调用.net 的 WebService 数据

.net 系统进行数据交换,对方提供了一个 WebService 接口,在 php 中考虑使用 SOAP 调

用对方的

WebService 数据。

与一般的

PHP POST 或 GET 传值再查库拿数据的思路不同,需要用到 SOAP 模块。

首先,确认

PHP.ini 开启了.SOAP,即 extension=php_soap.dll 去掉前的分号。

例子:
代码示例

:

<?php
/**
* SOAP 调用.net 的 WebService 数据
* edit: 

一览

www.yl1001.com)

*/
$client = new SoapClient('http://www.aa.net/SearchService.asmx?WSDL');// 这个 SOAP 地址要
换成你自己的
$client->soap_defencoding = 'utf-8'; 
$client->decode_utf8 = false;  
$client->xml_encoding = 'utf-8';
$param = array('param1'=>'01', 'param2'=>'02');
//$param["param1"]="01";
//$param["param2"]="02";
//$result = $client->__soapCall("GetArticle", array( $param ));
$result = $client->__Call("GetArticle", array( $param ));
if (is_soap_fault($result))
{
       trigger_error("SOAP  Fault:  (faultcode:  {$result->faultcode},  faultstring:  {$result-
>faultstring})", E_USER_ERROR);
}
else
{
    $data = $result->GetArticleResult; //这里返回的是类,必须使用->得到元素的值
    print_r($data);
}
?>
注意:参数是数组外再包一层数组,就是

 array( array() )

附,

SOAP 接口的一些参数:

以下是

 SOAP 1.2 请求和响应示例。所显示的占位符需替换为实际值。

代码示例

: