php soap function,从PHP SoapServer返回PHP数组

我对Soap在“创建服务方面”方面比较陌生,所以请提前预测我正在修改的任何术语.

是否可以从使用PHP的SoapServer类设置的远程过程肥皂服务返回PHP数组?

我有一个WSDL(盲目地按照教程建立),部分看起来像这样

我正在调用的PHP方法是命名查询,看起来像这样

public function query($arg){

$object = new stdClass();

$object->testing = $arg;

return $object;

}

这让我可以打电话

$client = new SoapClient("http://example.com/my.wsdl");

$result = $client->query('This is a test');

和结果转储看起来像

object(stdClass)[2]

public 'result' => string 'This is a test' (length=18)

我想从查询方法返回本机PHP数组/集合.如果我更改我的查询方法以返回一个数组

public function query($arg) {

$object = array('test','again');

return $object;

}

它被序列化为客户端的对象.

object(stdClass)[2]

public 'item' =>

array

0 => string 'test' (length=4)

1 => string 'again' (length=5)

这是有道理的,因为我在我的WSDL中将xsd:object特定为Result类型.如果可能的话,我想返回一个未包含在Object中的本机PHP数组.我的直觉说有一个特定的xsd:类型可以让我实现这个目标,但我不知道.我还决定将被序列化为ArrayObject的对象.

不要在WSDL的技术细节中拒绝接受我的教育.我正在努力掌握基本概念

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值