2011-04-18 110 views
0

嘿,所有。我正在尝试用PHP SOAPClient创建类似的XML标签。我了解如何创建我需要的xml。然而,它已经到了一个地步,我需要创建一个具有相同的标记名称,但不同属性的XML标签:使用SOAP创建XML消息PHP

<Rates> 
    <Rate EffectiveDate="2011-12-15"> <Total AmountAfterTax="155" /> </Rate> 
    <Rate EffectiveDate="2011-12-16"> <Total AmountAfterTax="155" /> </Rate> 
    <Rate EffectiveDate="2011-12-17"> <Total AmountAfterTax="155" /> </Rate> 
</Rates> 

我目前使用的foreach循环创造这一行:

$request->Reservation['Rates'] = ""; 

foreach($Array['Rates'] as $Value) 
{ 
    $request->Reservation['Rates']['Rate'] 
     = array("EffectiveDate" => $value['Date']); 
    $request->Reservation['Rates']['Rate']['Total'] 
     = array("AmountAfterTax" => $value['Price']); 
} 

回答

0

您是否尝试过制作一系列费率?

$request->Reservation['Rates'] = ""; 
$Length = count($Array['Rates']); 

for ($i = 0; $i < $Length; $i++) 
{ 
    $request->Reservation['Rates'][$i]['Rate'] 
     = array("EffectiveDate" => $Array['Rates']['Date']); 
    $request->Reservation['Rates'][$i]['Rate']['Total'] 
     = array("AmountAfterTax" => $Array['Rates']['Price']); 
} 
+0

是的,我已经给出了一个去。仍然只在循环中添加最终速率到xml消息:( – goingsideways 2011-04-18 06:01:29