我使用PHP SoapClient的消耗web服务..当服务参数是简单的和类似$客户机 - > GetProductById(阵列(“的productId” =>“ID”))PHP SoapClient复杂参数howto?
一切正常;诀窍...
但我需要访问的服务之一,需要更复杂的参数..我用SoapUI来测试Web服务,并与SoapUI,我可以很容易地使其工作..
的问题是,我不能使它与PHP SoapClient的工作,我根本无法找到一个方法来表示所有这些参数..
发送到服务器的SOAP消息是这样的(复制来自SoapUI)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:slps="http://www.microsoft.com/slps/">
<soapenv:Header/>
<soapenv:Body>
<slps:GetLicensesByFilter>
<slps:filter>
<slps:ExcludeCommercial>false</slps:ExcludeCommercial>
<slps:ExcludeTrial>false</slps:ExcludeTrial>
<slps:IssueDateRange>
<slps:End>2011-12-31T00:00:00.000Z</slps:End><slps:Start>2011-11-01T00:00:00.000Z</slps:Start>
</slps:IssueDateRange>
<slps:ProductId>1275b704-7622-c2xx-922e-76186497f744</slps:ProductId>
<slps:SkuId>A35138F43-0119-0719-802a-B48CCE6229A4</slps:SkuId>
</slps:filter>
<slps:retrievalOptions>LicenseInfo</slps:retrievalOptions><slps:pageIndex>0</slps:pageIndex>
</slps:GetLicensesByFilter>
</soapenv:Body>
</soapenv:Envelope>
我和作者发现的解决方案一样。 – Ismael
@BarCa:请在下面添加您的解决方案作为答案(请参阅我如何做这个示例),然后接受您的答案作为答案(是的,它是如何工作的,它完全被接受)。谢谢! – hakre