您的位置:首页 > 编程语言 > PHP开发

PHP WebService 调用 服务器端.net程序方法

2009-11-16 16:59 239 查看
php调用远程服务端的方法我们经常会用的是Call(), 来得到返回的值.

但是在有些情况下Call()方法满足不了人们的要求, 例如:当服务端返回的是一个自字义的数据时

用普通的Call()方法得到的是一个空值.

这种情况下就要用到代理:代码如下:

<?php
header("content-type:text/html;charset=utf-8");
require_once 'lib/nusoap.php';
//创建一个soapclient对象,参数是server的WSDL
$client=new soapclient('http://****/TimeSheetWebService.asmx?WSDL', 'wsdl');
$client->soap_defencoding = 'utf-8';
$client->decode_utf8=FALSE;
//生成proxy类
$proxy=$client->getProxy();
//调用远程函数
$param['articleID'] = 1027;
$param['moduleID'] = 413;
$aryResult=$proxy->GetArticleByArticleID($param);
$document=$proxy->document;
if (!$err=$proxy->getError()) {
print_r($document);
print_r($arr);
} else {
print "ERROR: $err";
}
?>


这种代理的方法就可以得到返回的数据了.

下面的基础好的人可以不用看..

因为上面的这种方式我们得到的会是一个String形式的值, 但如果返回的是一个类呢?

我们该如何才能得到相应字段的值呢,下面代码可以实现..

$arr = simplexml_load_string($document);

//print_r($arr); //可以测试下输出的是什么样式.

然后就用自己的方式得到每个节点的值.....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: