如何创建此SOAP XML请求?

时间:2010-11-10 15:56:37

标签: php xml arrays soap

我们现在使用SAOP客户端一段时间没有问题。但是现在我们面临着以下挑战,我找不到答案。我们需要发送以下XML结构:

<Cards>
 <CardDetails>
  <Name>string</Name>
  <Address>string</String>
 </CardDetails>
 <CardDetails>
  <Name>string</Name>
  <Address>string</String>
 </CardDetails>
</Cards>

正如你所见,我们需要两个'CardDetails'实例。创建PHP数组只允许我发送1。

$data = array(
    'Cards' => array(
        'CardDetails' => array(
            'Name' => 'test name',
            'Address' => 'test address'
        ),
        'CardDetails' => array(
            'Name' => 'second test name',
            'Address' => 'second test address'
        )
    )
));

当然,只会使用第二个地址。但是,使这项工作的解决方案是什么?

非常感谢!

2 个答案:

答案 0 :(得分:0)

使用php dom从数组创建xml,这是一个很好的例子http://www.ibm.com/developerworks/library/os-xmldomphp/

答案 1 :(得分:0)

您使用什么函数/类将数组转换为xml?

试试这个结构:

$data = array(
    'Cards' => array(
        'CardDetails' => array(
            array(
                'Name' => 'test name',
                'Address' => 'test address'
            ),
            array(
                'Name' => 'second test name',
                'Address' => 'second test address'
            )
        )
    )
);

如果这不起作用并且您可以修改序列化功能,只需检查当前键是否为数字。如果是,请使用标记的父键名称。