如何将相同的实体添加到soap数组php
经过无数个无休止的夜晚,我可以用我的客户机连接到外部SOAP服务器,我需要向那里发送一些数组。 我如何构造数组来生成这样的东西如何将相同的实体添加到soap数组php,php,soap,Php,Soap,经过无数个无休止的夜晚,我可以用我的客户机连接到外部SOAP服务器,我需要向那里发送一些数组。 我如何构造数组来生成这样的东西 <ns0:InformaceBloky> <ns0:Informace> <ns0:Typ>NA010001</ns0:Typ> <ns0:Poradi>1</ns0:Poradi> <ns0:Popis>Popis_1</n
<ns0:InformaceBloky>
<ns0:Informace>
<ns0:Typ>NA010001</ns0:Typ>
<ns0:Poradi>1</ns0:Poradi>
<ns0:Popis>Popis_1</ns0:Popis>
</ns0:Informace>
<ns0:Informace>
<ns0:Typ>NA010002</ns0:Typ>
<ns0:Poradi>2</ns0:Poradi>
<ns0:Popis>Popis_2</ns0:Popis>
</ns0:Informace>
<ns0:Informace>
<ns0:Typ>NA010003</ns0:Typ>
<ns0:Poradi>3</ns0:Poradi>
<ns0:Popis>Popis_3</ns0:Popis>
</ns0:Informace>
</ns0:InformaceBloky>
PHP脚本的一部分:
foreach ($zsBody as $zsBody_item_k => $zsBody_item_v) {
$informaceBlok[$zsBody_item_k]['Informace'] = array(
'Typ' => "NA01000$zsBody_item_k",
'Poradi' => $zsBody_item_k,
'Popis' => "<![CDATA[" . json_encode($zsBody_item_v) . "]]>"
);
}
$data_aerg = array('InformaceBloky' => $informaceBlok);
有什么想法吗,请告诉我,如何创建该数组?您在foreach的每次迭代中都会覆盖“Informace”键,而不是将其初始化为数组并附加到其中:
$informaceBlok[$zsBody_item_k]['Informace'] = array(); // initialize
foreach ($zsBody as $zsBody_item_k => $zsBody_item_v) {
$informaceBlok[$zsBody_item_k]['Informace'][] = array( // append using []
'Typ' => "NA01000$zsBody_item_k",
'Poradi' => $zsBody_item_k,
'Popis' => "<![CDATA[" . json_encode($zsBody_item_v) . "]]>"
);
}
包装数组。。。在另一个数组中。