我正在使用PHP SOAPSERVER类。
作为响应,我发送关联的php数组:
function getItems()
{
...
$items[] = Array("itemID" =>$itemID,"itemName"=>$itemName);
return $items;
}
SOAP返回如下:
...
<Items>
<item type="Map">
<item>
<key type="string">
itemID
</key>
<value type="string">
17558
</value>
</item>
<item>
<key type="string">
itemName
</key>
<value type="string">
I-17558
</value>
</item>
</item>
</Items>
...
这种回归很难分析人类(给定更大的数组)。 首选形式是这样的:
...
<Items>
<item>
<itemID>17558</itemID>
<itemName>I-17558</itemName>
</item>
<item>
<itemID>17559</itemID>
<itemName>I-17559</itemName>
</item>
</Items>
...
是否可以返回SOAP(不更改返回类型 - 数组)?怎么样?
我刚开始使用SOAP,大多数教程都展示了如何返回像string这样的简单类型。
答案 0 :(得分:5)
不是发送关联数组,而是发送stdclass对象。
示例:
$return = new stdclass;
$return->ItemID = 1;
$return->ItemName = 'foo';
return $return;
然后SOAP结果将是您想要的方式!