2014-01-07 87 views
0

我有期待的請求,像這樣一個SOAP服務:創建一個PHP SoapClient的請求

<soap:body> 
    ... 
    <request> 
    <MemberIds> 
     <MemberId>string</MemberId> 
     <MemberId>string</MemberId> 
    </MemberIds> 
    <foo>string</foo> 
    </request> 
    ... 
</soap:body> 

Foo工作正常,但我有填充MemberIds部分問題。

不管我看起來做什麼,請求中都不包含MemberId屬性。我曾嘗試:

array(
    'MemberIds' => '1', 
    'foo' => 'bar' 
) 

array(
    'MemberIds' => array('1'), 
    'foo' => 'bar' 
) 

array(
    'MemberIds' => array('MemberId' => '1'), 
    'foo' => 'bar' 
) 

...所有這些填充foo但沒有MemberIds。我目前只嘗試一次使用一個MemberId,但我無法看到如何使用多個名爲MemberId s的構造方法,而無需手動創建XML,因爲我無法使用相同名稱的兄弟項目 - 我可以'不要讓它與一件物品一起工作!有什麼建議?

回答

0

現在我只是覺得很傻。它是MemberId,但我使用的是MemberID。由於這與規範不符,SoapClient完全剝離了它。

我會刪除這個問題,但我相信別人會有同樣的問題。也許我在6個月內再次。

0

這一切都應該工作。

$array = array(); 
$array['MemberIds'][0]['MemberId'] = 1; 
$array['foo'] = 'bar'; 

沒有錯誤信息返回?