добавить параметр к мыльному вызову в php - PullRequest
0 голосов
/ 12 сентября 2018

Я довольно новичок в мыльных вызовах, но у меня есть простой, работающий нормально, с использованием массивов.

$xml_array['searchName'] = "websvc";
$xml_Parray['name'] = "Cust Code";
$xml_Parray['value'] = "338877";
//   $Parray['searchParameter xsi:type="met:StringParameter"']=$xml_Parray;     //errors 
$Parray['searchParameter']=$xml_Parray;


$client = new WSSoapClient($wsdl, array('trace' => 1, 'exceptions' => 0));
$client->__setUsernameToken($UserName, $Password);
$client->__setLocation('http://127.0.0.1:80/demo/search');          

$xml_array['searchParameters'] = $Parray;

$response = $client->__soapCall("getDocuments", array($xml_array));

Так что это дает мне ...

<searchName>websvc</searchName>
<searchParameters>
  <searchParameter>
    <name>Cust Code</name>
    <value>338877</value>
  </searchParameter>
</searchParameters>

НОТеперь мне нужно добавить дополнительный текст

xsi: type = "met: StringParameter"

<searchName>websvc</searchName>
<searchParameters>
  <searchParameter xsi:type="met:StringParameter">
    <name>Cust Code</name>
    <value>338877</value>
  </searchParameter>
</searchParameters>

Я просто попытался

$Parray['searchParameter xsi:type="met:StringParameter"']=$xml_Parray;

, но получил ответ

Неустранимая ошибка: SOAP-ERROR: Кодировка: у объекта нет свойства 'searchParameter'

Может кто-нибудь помочь?

Обновление.Я обнаружил, что я пытаюсь сделать это добавить атрибуты!

Так что я попробовал это

array("searchParameter" => array("_" => "$xml_Parray", "xsi:type"=>"met:StringParameter"));

Но я тоже не уверен, что это правильно!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...