我正在使用php和SOAP调用API。 请求的某些部分如:
<fin:Customer>
<fin1:Address>
<fin1:City>City</fin1:City>
<fin1:Country>CA</fin1:Country>
</fin1:Address>
<fin:Customer>
使用数组很容易:
'Customer' => array(
'Address' => array (
'City' => $City,
'Country' => $Country,
),
但我的挑战是这一部分:
<fin:Criterions>
<fin:Criterion name="VALX">17</fin:Criterion>
<fin:Criterion name="VALOP">1</fin:Criterion>
<fin:Criterion name="VALLP">10</fin:Criterion>
<fin:Criterion name="TMS">3</fin:Criterion>
因为所有标签都具有相同的名称,并且它们还具有名称参数和值。 我怎样才能将它传递给SOAP API? 是否可以使用数组?
提前致谢!
答案 0 :(得分:0)
构造请求,发送请求和处理响应的最简单方法是使用WSDL到PHP生成器,因为它通常会为您需要发送的每个参数生成每个类(除响应对象和操作外)类)
了解这一点,你将能够轻松地看到如何传递这些“重复”标签,因为它肯定是你必须通过的一个对象数组,
尝试应该正常工作的PackageGenerator项目,
答案 1 :(得分:0)
解决方案:
'Criterions' => array(
'Criterion' => array(
array('name'=> 'VALX' , '_'=> '17' ),
array('name'=> 'VALOP' , '_'=> '1' ),
array('name'=> 'VALLP' , '_'=> '10' ),
array('name'=> 'TMS' , '_'=> '3' )
));
如果其他值(例如val,value等)不起作用,请务必使用下划线(&#39; _&#39;)。
可以节省一些人的时间和精力。