在XMLRPC中发送数组?

时间:2011-04-13 08:16:11

标签: php xml-rpc xmlrpcclient

我无法弄清楚这是怎么回事:

$message = new xmlrpcmsg('service.RegistrationDetails',
    array(new xmlrpcval(
         array('EventId' => new xmlrpxval($EventId, "int"), 
             'ParticipantId' => new xmlrpxval($usrId, "int")), 'array') 
    )
);

根据 - http://phpxmlrpc.sourceforge.net/doc/xmlrpcval.html

上的文档

但上面的崩溃

$result = $server->send($message);

我试过了:

$message = new xmlrpcmsg('service.RegistrationDetails',
    new xmlrpcval(
         array('EventId' => new xmlrpxval($EventId, "int"), 
             'ParticipantId' => new xmlrpxval($usrId, "int")), 'array') 
);

但这也没有用


我的坏!我有一个拼写错误 - “xmlrpxval”而不是“xmlrpcval”。我认为第二个应该工作,但不确定......

2 个答案:

答案 0 :(得分:0)

那是因为你想要定义的实际上并不是一个数组,它是一个关联数组。使用struct代替array,它应该有效。

答案 1 :(得分:0)

这非常有效:

$message = new xmlrpcmsg('abc.abcDetails', array(new xmlrpcval($cId, 'int'), new xmlrpcval($dStr,'string') ));