Php SOAPClient-为什么我的请求与所需的请求看起来如此不同?

Php SOAPClient-为什么我的请求与所需的请求看起来如此不同?,php,soap,wsdl,Php,Soap,Wsdl,因此,我有一个提要,它要求我发送标题为“CredentialsHeader”的标题,其中包含用户名和密码,如下所示: <?xml version="1.0" encoding="utf-8"?> <soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3

因此,我有一个提要,它要求我发送标题为“CredentialsHeader”的标题,其中包含用户名和密码,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
  <soap12:Header>
    <CredentialsHeader xmlns="http://www.property24.com/Services/P24ListingService13">
      <EMail>string</EMail>
      <Password>string</Password>
    </CredentialsHeader>
  </soap12:Header>
  ....
现在我的请求看起来像

<?xml version="1.0" encoding="UTF-8"?> 
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.property24.com/Services/P24ListingService13" xmlns:ns2="dto">
<SOAP-ENV:Header>
    <ns2:CredentialsHeader>
        <EMail>ricky@email.com</EMail>
        <Password>test</Password>
    </ns2:CredentialsHeader>
</SOAP-ENV:Header>
....

ricky@email.com
测试
....

这导致身份验证失败-为什么我生成的SOAP请求与第一个示例块如此不同?如何使其看起来相同?

当您实例化您的soap客户端时,您是否指定了版本
'soap\u version'=>soap\u 1\u 2
?太好了,现在它看起来更相似了,但是我仍然有
ns2:
前缀?我不知道它是否有帮助,但看看这个答案@rickyduck:这是XML,没有什么不同,只是看起来不一样,但都一样。看见你应该没事的。
<?xml version="1.0" encoding="UTF-8"?> 
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="http://www.property24.com/Services/P24ListingService13" xmlns:ns2="dto">
<SOAP-ENV:Header>
    <ns2:CredentialsHeader>
        <EMail>ricky@email.com</EMail>
        <Password>test</Password>
    </ns2:CredentialsHeader>
</SOAP-ENV:Header>
....