如何使用php创建soap wsdl请求模板

时间:2017-06-09 06:03:49

标签: php xml

这是我想要为服务创建的我的xml请求。

<soapenv:Header>
  <aut:AuthenticationHeader>
     <aut:LoginName>John</aut:LoginName>
     <aut:Password>Johnpass</aut:Password>
     <aut:Culture>en_US</aut:Culture>
     <aut:Version>8</aut:Version>
  </aut:AuthenticationHeader>
</soapenv:Header>
<soapenv:Body>
  <hot:GetCancellationPolicies>
     <hot:hotelId>19752</hot:hotelId>
     <hot:hotelRoomTypeId>20955</hot:hotelRoomTypeId>
     <hot:dtCheckIn>2017-06-25</hot:dtCheckIn>
     <hot:dtCheckOut>2017-06-28</hot:dtCheckOut>
  </hot:GetCancellationPolicies>

那是我的PHP代码

$p = new stdClass;
$p->request->HotelId                     = '19752';
$p->request->HotelRoomTypeId             = '20955';
$p->request->dtCheckIn                   = '2017-06-25';
$p->request->dtCheckOut                  = '2017-06-28';
$quote = $client->GetCancellationPolicies($p);

实际上我得到了错误。下面提到了。 错误详情: SOAP-ERROR:编码:对象没有&#39; nResId&#39;属性

我是网络服务的新手,如果有人可以帮助我,那就太棒了。

1 个答案:

答案 0 :(得分:0)

从wsdl

,您应该使用WSDL生成相应的PHP sdk到php生成器,例如PackageGenerator项目,因为您不会想知道如何构造请求,此外,它还可以帮助您轻松处理一切都是OOP的响应